disable the "Enable Query Timeout" flag in the ODBC Driver Configuration of the driverchange the CPTIMEOUT in the registry under:
HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\Oracle in OraHome8I to 0
HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\Oracle in OraHome8I to 0
我用的是“ORACLE ODBC DRIVER ”
我觉得这个问题概括起来就是 :ORACLE的客户端程序如何在执行时间较长的SQL操作时避免超时操作。
让我奇怪的是客户端运行 PLSQL 执行复杂费时的SQL操作时却不会有ORA-01013,PLSQL如何实现的?
你就在odbc的configure里面找一下
Action Continue with the next operation.
问题已经解决了。毛病出在MFC的cdatabase 类上。我的程序通过这个类调用oracle客户端的命名服务。虽然ORACLE ODBC DRIVER被我去掉了超时值,但是cdatabase类里有缺省的15秒超时设置。当运行费时超过该值的操作时会中断操作。造成ora-01013错误。解决办法是把CDATABASE的超时值用SETQUERYTIMEOUT函数设大一些即可。