Select 语句用OPEN,Update/Insert用execsql EXAMPLE: DM.ADOQ_Base.Active := False; DM.ADOQ_Base.SQL.Clear; DM.ADOQ_Base.SQL.Add('select FileName from TFile where FileID='''+aFileID+''' order by RobotID desc'); try DM.ADOQ_Base.Active := True ; aIndex := DM.ADOQ_Base.RecordCount ; while not DM.ADOQ_Base.Eof do begin aFileID := DM.ADOQ_Base.FieldByName('FileID').AsString; aFileName := DM.ADOQ_Base.FieldByName('FileName').AsString ; DM.ADOQ_Base.Next; end ; except DM.ADOQ_Base.Active := False ; Result := -1 ; end ;
因为插入记录并不返回任何数据库记录,所以不能用OPEN
Select 语句用OPEN,Update/Insert用execsql
对了,中秋到了,小弟祝各位大虾中秋快乐,国庆快乐,工作顺利玩得开心!
完全正确!
EXAMPLE:
DM.ADOQ_Base.Active := False;
DM.ADOQ_Base.SQL.Clear;
DM.ADOQ_Base.SQL.Add('select FileName from TFile where FileID='''+aFileID+''' order by RobotID desc');
try
DM.ADOQ_Base.Active := True ;
aIndex := DM.ADOQ_Base.RecordCount ;
while not DM.ADOQ_Base.Eof do begin
aFileID := DM.ADOQ_Base.FieldByName('FileID').AsString;
aFileName := DM.ADOQ_Base.FieldByName('FileName').AsString ;
DM.ADOQ_Base.Next;
end ;
except
DM.ADOQ_Base.Active := False ;
Result := -1 ;
end ;
Insert、Update、Delete不返回结果集。用EXECSQL方法。
:)