当我通过执行存储cfstoredproc
过程时,我得到的结果与通过调用存储过程不同cfquery
。我将相同的确切参数值传递给每个调用。而且,当我在 SQL Studio 中运行存储过程时,我得到了正确的结果(与 cfquery 相同)。
这是cfstoredproc
电话
<cfstoredproc datasource="#request.mainDSN#" debug="#request.debug#" procedure="rankingresults">
<cfprocparam type="in" value="8652" CFSQLType="CF_SQL_INTEGER">
<cfprocparam type="in" value="50" CFSQLType="CF_SQL_INTEGER">
<cfprocparam type="in" value="53" CFSQLType="CF_SQL_INTEGER">
<cfprocresult name="local.listing">
</cfstoredproc>
这是cfquery
电话
<cfquery datasource="#request.mainDSN#" name="rankings">
EXEC rankingresults
@CityZipId = 8652,
@distance = 50,
@sic = 53
</cfquery>
结果完全不同。它甚至不接近。我已经为此困扰了几个小时,但我无法弄清楚为什么它正在做它正在做的事情。
更新
存储的过程很大(也是我继承的),所以我不打算在这里全部粘贴:http: //pastebin.com/EtufPWXf