在Post前怎么知道TQuery的更新SQL(100)

  • 主题发起人 主题发起人 mickeyboy
  • 开始时间 开始时间
M

mickeyboy

Unregistered / Unconfirmed
GUEST, unregistred user!
一个和DBGRID关联的Query,在数据更新前,我想知道更新使用的SQL语句,要怎么获取
 
如果是用TADOCommand控件,就是 adoComm.CommandText其它的你找找它们的属性就可以了,类似于下面的形式:.SQL.Text
 
在oracle里面,可以通过视图v_$sql查看最近的sql,但LZ这种数据变更,我不知道是否可以查看到相关SQL。其他数据库,那就更加不知道了。要不你通过Delphi菜单下的SQL Monitor工具,跟踪看看是否可以得到那个SQL.
 
用的是Mysql数据库,数据是通过TMyQuery查询得到,在DBGRID中更改数据后Post,我想在数据被更新之前对TMyQuery自动产生的SQL语句进行一些处理
 
那你还是在OnBeforePost事件中处理吧,那个SQL是底层的,没开放出来给我们处理。
 
如果用得是SQLServer可以用事件查看器来跟踪得!
 
to xznia:在onbeforepost事件中怎么知道获取更新的SQL语句呢to caixuan2006:我想在代码中对SQL语句做个记录,替换一些内容现在用的是tupdatesql控件,在更新之前设置tupdatesql的更新sql语句现在我想代替tupdatesql的applay,直接执行sql语句,该怎么做
 
我们用的是adoquery,在post前,可以读出每个字段修改前和修改后的值,如果不同,就可以判断出来了。
 
自己组合SQL?需要处理不同类型的字段,难道没有一种比较便捷的办法吗,我只想把SQL语句LOG下来
 
后退
顶部