我有一个使用ADO/MSDASQL.1
提供程序的 Delphi 7 应用程序,我想知道是否可以以简单的方式“记录”发送到数据库的 SQL 查询?就像 SQL Server 中的 SQL 探查器一样?
Andy
问问题
1334 次
2 回答
6
在您的应用程序中,您可以在 TADOConnection.OnWillExecute 事件中记录命令,您只需保存 CommandText,但您还可以记录许多其他选项。
procedure TForm23.ADOConnection1WillExecute(Connection: TADOConnection; var
CommandText: WideString; var CursorType: TCursorType; var LockType:
TADOLockType; var CommandType: TCommandType; var ExecuteOptions:
TExecuteOptions; var EventStatus: TEventStatus; const Command: _Command;
const Recordset: _Recordset);
begin
LogToFile( CommandText );
end;
于 2008-12-06T12:24:32.993 回答
1
我做了类似的事情,但我所有的查询都通过一个点。此时添加日志记录是一个简单的更改。另一种选择是创建一个从 TADOQuery 派生的 TLogADOQuery 类,并覆盖ExecuteSQL和Open以记录进入数据库的 SQL。然后,您将所有对 TADOQuery 的引用替换为您的新类。
于 2008-12-06T21:45:45.920 回答