我用这样的方法:
dsTmpDataSet:=DMFrm.procComm;--接到第一个
while dsTmpDataSet<>Nil do
Begin
dsTmpDataSet.First;
while not dsTmpdataSet.Eof do
Begin
showmessage(dsTmpDataSet.Fields[0].AsString);
dsTmpdataSet.Next;
End;
if dsTmpDataSet<>DMFrm.procComm then
dsTmpDataSet.Free;
dsTmpDataSet:=DMFrm.procComm.NextRecordSet;--如此,但是接不到下一个了?
End;
这个能很好用,但是我怎么就不行呢?
dsTmpDataSet:=DMFrm.procComm;--接到第一个
while dsTmpDataSet<>Nil do
Begin
dsTmpDataSet.First;
while not dsTmpdataSet.Eof do
Begin
showmessage(dsTmpDataSet.Fields[0].AsString);
dsTmpdataSet.Next;
End;
if dsTmpDataSet<>DMFrm.procComm then
dsTmpDataSet.Free;
dsTmpDataSet:=DMFrm.procComm.NextRecordSet;--如此,但是接不到下一个了?
End;
这个能很好用,但是我怎么就不行呢?
procedure TForm1.Button1Click(Sender: TObject);
var i:integer;
begin with SQLStoredProc1 do begin
Close;
ProcedureName:='she_Rules';
Parameters.Refresh;
Parameters.ParamValues['@str1']:='200100200500';
open;
query1.Recordset:=Recordset; {第一个数据集}
query2.Recordset:=NextRecordset(i);{第二个数据集} end;end;
ADODataSet1.Recordset := ADOStoredProc1.NextRecordset(0);這樣
但是DBX的好像不行啊