如何得到AdoConnection.execute(sqlstr)執行的返回結果?
1:
TAdoConnection.execute有procedure、function的兩種定義,function返回_RecordSet類型。可以這樣調用:
rec:_Recordset;
n:integer;
rec:=conn.Execute(sqlStr);
if (assigned(rec)) and (not rec.eof) n:=rec.Fields[0].Value;
......
IstValue := conn.Execute(sqlstr)(0)
SecValue := conn.Execute(sqlstr)(1)
......
2:
另一種方法(摘自【IT168知識庫】,原文:http://tech.it168.com/KnowledgeBase/Articles/2/d/7/2d7bc875400ab8bc74aff74553f7e129.htm):
Connection.execute后操作完成后將觸發onExecuteComplete事件:
ExecuteComplete RecordsAffected, pError, adStatus, pCommand, pRecordset, pConnection
參數:
RecordsAffected:長整型值,命令所影響的記錄數目。
pError:Error對象,說明當adStatus值為adStatusErrorsOccured時所發生的錯誤,否則將不對它進行設置。
adStatus:EventStatusEnum狀態值,當調用該方法時,如果引發事件的操作成功,該參數設置為adStatusOK,如果操作失敗,則設置為adStatusErrorsOccurred。
在此方法返回前,將該參數設置為 adStatusUnwantedEvent 可避免后續的通知。
pCommand:所執行的 Command 對象(如果有)。
pRecordset:Recordset對象,執行的結果。該記錄集可以為空。
pConnection:Connection對象,執行命令所針對的連接。
說明:
ExecuteComplete事件可因Connection.Execute、Command.Execute、Recordset.Open或Recordset.NextRecordset而發生。