Cita:
Empezado por ivantj24
si ya mire que si la puedo cambiar el detalle es que no se como al meter todas las sentencias dentro del DataSet con todos loso select al querer elegir cual utilizar como hacerlo.
|
No puedes "meterlas" todas a la vez (bueno, con ADO hay posbilidad de hacerlo, pero es bastante lioso); Creo que es más sencillo que en cada momento coloques la sentencia que quieres y actives el DataSet.
De todas formas, ya que lo he comentado, te pongo un ejemplo sencillo.
Con ADO puedes añadir un ADOQuery con la siguiente sentecia SQL:
Código SQL
[-]
Select Top 5 * from Usuario
Select Top 5 * from Moneda
Select Top 5 * from Pais
Al abrir la sentencia, ADO detecta que son tres sentecias diferentes y lanza las 3 devolviendo 3 recordsets.
Para acceser a ellos, puedes colocar 3 DBGrids y asociados a ellos 3 DataSources y con el siguiente código acceder a los 3:
Código Delphi
[-]
var
n:Integer;
FRecordSet:TADODataSet;
begin
ADOQuery1.SQL.Text := Memo1.Lines.Text;
ADOQuery1.Open;
FRecordSet := TADODataSet.Create(nil);
FRecordSet.Recordset := ADOQuery1.Recordset;
DBGrid1.DataSource.DataSet := FRecordSet;
FRecordSet := TADODataSet.Create(nil);
FRecordSet.Recordset := ADOQuery1.NextRecordSet(n);
DBGrid2.DataSource.DataSet := FRecordSet;
FRecordSet := TADODataSet.Create(nil);
FRecordSet.Recordset := ADOQuery1.NextRecordSet(n);
DBGrid3.DataSource.DataSet := FRecordSet;