我正在尝试使用TSQLMonitor组件,但没有成功...

我的OnTrace事件中包含以下代码:

procedure TForm1.SQLMonitor1LogTrace(Sender: TObject; TraceInfo: TDBXTraceInfo);
begin
  memo1.Lines.Add(traceinfo.message);
end;


效果也不错,但是SQL命令中的“我”值用问号(“?”)表示,我也不知道为什么!看一个例子:

INTERBASE - isc_start_transaction
INTERBASE - isc_dsql_allocate_statement
**update "CDSUBPRODUTOS"  set
 "DATAINCLUSAO" = ?
where
 "CDSPRCODIGO" = ? and
 "DATAINCLUSAO" = ? and
 "DATAALTERACAO" is null and
 "CODUSUARIOALTERACAO" = ? and
 "CDSPRCODGRUPO" = ? and
 "CDSPRSITUACAO" = ? and
 "CDSPRDESCRICAO" = ? and
 "CDSPRMEDIDA" = ? and
 "CDSPRVALOR" = ? and
 "CDSPRUTILIZARFORMACAOPRECO_SN" = ?**

INTERBASE - isc_dsql_prepare
INTERBASE - isc_dsql_sql_info
INTERBASE - isc_portable_integer
INTERBASE - isc_dsql_describe_bind
INTERBASE - SQLDialect = 3
INTERBASE - isc_dsql_execute
INTERBASE - isc_dsql_free_statement
INTERBASE - isc_dsql_free_statement
INTERBASE - isc_commit_transaction


我想将这些符号替换为正确的值(在这种情况下为更改后的值)。我正在将Delphi XE与Firebird 2.5一起使用。

如果有人可以帮助我,我将不胜感激!!!拥抱!

最佳答案

通过在Internet上搜索,似乎TSQLMonitor不显示参数值。甚至还有2002年的Quality Central issue #1358都要求参数支持。我也找不到任何设置或属性。

10-05 22:25