我遇到了一个错误,“来自 mysql_next_result() 的未处理错误”,这是我以前从未见过的,希望有人能提供任何见解。
我刚刚将我的服务器升级到 ColdFusion 9。大约在同一时间,我更新了一些脚本,添加了一个我现在正在测试的新功能,该功能使用由 @ 符号包围的标签。在我的测试中,我发现我的脚本在没有任何这些标签的情况下工作,但没有这些标签。不幸的是,由于这是在 CFTransaction 块内的单个 CFQuery 中处理的,因此很难查明问题。据我所知,失败的查询类似于:
INSERT INTO galleries_images (EID, Name, Desc1, Format1, OrderID, category, FullPath, hastags, haskeys, udate)
VALUES (<CFQUERYPARAM CFSQLTYPE="CF_SQL_INTEGER" VALUE="#EID#">,
<CFQUERYPARAM CFSQLTYPE="CF_SQL_VARCHAR" VALUE="#Name#">,
<CFQUERYPARAM CFSQLTYPE="CF_SQL_VARCHAR" VALUE="#imageProps[2][2]#">,
<CFQUERYPARAM CFSQLTYPE="CF_SQL_INTEGER" VALUE="0">,
<CFQUERYPARAM CFSQLTYPE="CF_SQL_INTEGER" VALUE="#imageProps[2][4]#">,
<CFQUERYPARAM CFSQLTYPE="CF_SQL_INTEGER" VALUE="#catID.ID#">,
<CFQUERYPARAM CFSQLTYPE="CF_SQL_VARCHAR" VALUE="#Source_Dir#\#Name#">,
<CFQUERYPARAM CFSQLTYPE="CF_SQL_INTEGER" VALUE="#hastags#">,
<CFQUERYPARAM CFSQLTYPE="CF_SQL_INTEGER" VALUE="#haskeys#">,
Now());
这些变量的值应大致为:
EID=24
Name=Nick001@ord@001@ord@@tags@Pre-Ceremony@tags@.jpg
imageProps[2][2]=
imageProps[2][4]=001
catID.ID=67
Source_Dir=\Name=01_Nicholas - Camera\Nick001@ord@001@ord@@tags@Pre-Ceremony@tags@.jpg
hastags=0
haskeys=0
相同的查询(或一组查询,因为其中 50-100 个在一个 CFQuery 块中运行)将在名称和 source_dir 没有 @ 符号的情况下运行得很好。由于这些在 CFQueryParam 标记中,我认为尽管它们与 MySQL 中的变量声明相关,但它们可以安全使用。有什么想法吗?