当前位置: 首页 > 知识库问答 >
问题:

用querytimeout=0解决SQL0666错误的危险

柳和怡
2023-03-14

我使用Microsoft Access2007和IBM AS400 DB2 SQL v6r1服务器。最近,我开始扩展我的DB2经验,将一些更复杂的访问查询转换为Pass-Through类型。查询速度的提高是惊人的,但这是意料之中的,尤其是在较大的表中,有些表有20,000,000多行。

正如使用Access+DB2所预期的那样,我遇到了SQL0666错误。或者至少...我现在期待它,因为我经常遇到它。我通过增加直通查询的'ODBC超时‘属性来应用自助并解决了这个问题。我通过增加它直到查询工作,然后将其加倍来找到似乎是逻辑安全的值。

无论Access以何种方式计算其对查询持续时间的估计,它似乎都与实际情况极不相称。如果我将这样一个查询复制/粘贴到IBM iNavigator SQL窗口中并在那里运行它,它将花费一小部分时间,有时甚至是Access认为它应该花费的1/10。

昨天我偶然发现了下面的网页,它描述了完全消除查询超时问题的步骤。我发现它向DSN添加了'querytimeout=0',这似乎是SQL0666错误的永久治愈方法。

https://kb.rfgen.com/kb/index.php?view=entry&entryid=107

但是...

我很想把它添加到我所有的查询中,但作为一个关心它的书呆子,我对此犹豫不决。

共有1个答案

曾奇略
2023-03-14

执行查询运行时估计的不是Access,而是Db2 for iSeries优化器本身。

如本technote所述,可以在几个级别设置超时,但ODBC设置将覆盖所有这些级别。

您的保留是正确的:超时的目的正是为了防止“失控”查询消耗太多资源。使用现代硬件,服务器崩溃的风险可能很小,但并发用户查询的性能肯定会受到影响。

 类似资料:
  • 本文向大家介绍解决 java.lang.NoSuchMethodError的错误,包括了解决 java.lang.NoSuchMethodError的错误的使用技巧和注意事项,需要的朋友参考一下 解决 java.lang.NoSuchMethodError的错误 1 原因 在项目依赖比较复杂或者 Java 运行的环境有问题时,或者同一类型的 jar 包有不同版本存在,都可能触发该错误。本质上说是

  • 问题内容: 我不熟悉使用Java发送邮件的功能。发送电子邮件重设密码时出现错误。希望你能给我一个解决方案。 下面是我的代码: 引发以下错误: 调试:setDebug:JavaMail版本1.4.1ea-SNAPSHOT javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]

  • 我不熟悉这个功能在Java发送邮件。我收到一个错误时发送电子邮件重置密码。希望你能给我一个解决办法。 下面是我的代码: 引发以下错误: debug:setdebug:JavaMail版本1.4.1ea-snapshot 调试SMTP:useEhlo为true,useAuth为true 调试SMTP:正在尝试连接到主机“smtp.gmail.com”,端口465,isSSL false 220 mx

  • 接口通用问题解决方案 通用错误码,错误信息及解决方案 400(非法的client_id) 400(非法的client_secret) 402(未传当前用户手机号) 402(手机号不合法) 403,10002(IP不在白名单中,本次请求ip:xxx.xxx.xxx.xxx) 403(无权访问该接口) 406(该用户不存在,请管理员添加后再使用) 408(未传timestamp或者timestamp格

  • 现在我正在尝试从git运行克隆应用程序https://github.com/frinder/frinder-app但问题是该应用程序制作了很长时间,所以应该改变bulid.gradle 但是当我尝试相同的同步实现“com.android.支持:动画矢量可绘制:28.0.0”,但如果我删除它,请继续向我显示错误28.0.0它显示如下 但我不知道是什么造成了不完全相同的版本 这是应用程序build.g

  • 本文向大家介绍asp.net中“从客户端中检测到有潜在危险的Request.Form值”错误的解决办法,包括了asp.net中“从客户端中检测到有潜在危险的Request.Form值”错误的解决办法的使用技巧和注意事项,需要的朋友参考一下 在提交表单时候,asp.net 提示:"从客户端(......)中检测到有潜在危险的 Request.Form 值" 。asp.net中的请求验证特性提供了某一