我们间歇性地但经常收到以下错误:
Error Executing Database Query. [Macromedia][SQLServer JDBC Driver][SQLServer]Could not find prepared statement with handle 1.
我实现了我能够找到的这个问题的两个解决方案 -
- 在查询末尾加上分号(据说是为了强制重新编译查询)
- 将此 MS-SQL 放在查询的末尾:
OPTION (RECOMPILE)
我应用了修复 1,错误在那天的剩余时间里停止了。第二天,错误又回来了。
我应用了修复 2,同样的事情发生了——直到第二天才出现错误。
我确实明白,每当我使用<cfqueryparam>
准备好的语句时,都会自动使用,但是是否有办法在每次使用查询时强制数据库“重新准备”而不依赖于缓存的语句?
请注意,我没有对此 Cf 服务器的管理员访问权限。
cf 版本是 9.0.0
SQL Server 9.0.3054。
有问题的查询:
<cfquery datasource="#dsn#" name="q" maxrows="1">
SELECT
ID
FROM
tableOne
WHERE ID = <cfqueryparam cfsqltype="cf_sql_integer" value="#url.ID#">
ORDER BY ID
</cfquery>
谢谢