Z zyt_1978 Unregistered / Unconfirmed GUEST, unregistred user! 2008-02-25 #1 客户把access转换为sqlserver,但是日期方面查询有问题<br>因为软件没有源代码<br>我想sqlserver里面sql语句劫持,然后修改把#修改为sqlserver能接受的'<br>最好是能建立一个存储过程
客户把access转换为sqlserver,但是日期方面查询有问题<br>因为软件没有源代码<br>我想sqlserver里面sql语句劫持,然后修改把#修改为sqlserver能接受的'<br>最好是能建立一个存储过程
C china_peng Unregistered / Unconfirmed GUEST, unregistred user! 2008-02-26 #2 如果别人以前用ACCESS作后台数据库,你现在把数据库改成SQL,假如他是用Delphi写的应用程序,并且已经在程序中写了ACCESS格式的SQL语法,你就算建立存储过程有用吗?
深 深邃眼眸 Unregistered / Unconfirmed GUEST, unregistred user! 2008-03-01 #4 china_peng 说的对啊,还是尽量找到源码修改成支持多种数据库的,这样好才免去后患.
T tseug Unregistered / Unconfirmed GUEST, unregistred user! 2008-03-01 #5 说个思路<br>猜测这个程序是通过ADO来访问Acess的,那么可以通过API HOOK 取得 ADO 的Interface,<br>然后,通过COM HOOK拦截调用请求,对请求的SQL做一下处理,使之适合数据库。不过,<br>这样做的需要付出的代价你可要自己衡量了。<br><br>还有个思路,可能稍微容易点,动态跟踪分析,找到ADOQuery的地址,然后动态修改<br>SQL。<br><br>只是说说,我也没有具体这么做过。
说个思路<br>猜测这个程序是通过ADO来访问Acess的,那么可以通过API HOOK 取得 ADO 的Interface,<br>然后,通过COM HOOK拦截调用请求,对请求的SQL做一下处理,使之适合数据库。不过,<br>这样做的需要付出的代价你可要自己衡量了。<br><br>还有个思路,可能稍微容易点,动态跟踪分析,找到ADOQuery的地址,然后动态修改<br>SQL。<br><br>只是说说,我也没有具体这么做过。
S sunnyfairy Unregistered / Unconfirmed GUEST, unregistred user! 2008-03-01 #6 没有源码不可能啊,<br>模糊查询关键字不一样。
Z zyt_1978 Unregistered / Unconfirmed GUEST, unregistred user! 2008-03-03 #7 难道sqlserver里面就不可以劫持sql语句,修改后再往下层传<br>如果没有,那么就是sqlserver没有提供这个功能<br>或者还没有高手看到我这个问题。