複数を使用cfquery
すると、ColdFusion で次のエラーが発生します。cfqueryparams
ただし、それらが使用されていないか、どちらか一方のみに限定されている場合、クエリは期待される結果を返します。
<cfquery name="getComponent"
datasource="#Request.DSN#"
username="#Request.username#"
password="#Request.password#">
SELECT *
FROM tbComponent
INNER JOIN tbPart ON tbPart.partNo = tbComponent.partNo
INNER JOIN tbProduct on tbProduct.prodNo = tbComponent.prodNo
WHERE tbComponent.prodNo = <cfqueryparam value="#URL.prodNo#"
cfsqltype="CF_SQL_CHAR"
maxlength="3" />
AND tbComponent.compNo = <cfqueryparam value="#URL.compNo#"
cfsqltype="CF_SQL_CHAR"
maxlength="2" />
</cfquery>
データは、次のような URL を介して渡されます。
http://localhost/index.cfm?prodNo=100&compNo=1
クエリは有効なデータを使用して SQLPlus でテストされており、期待される結果も返されます。URL
この問題は、値がpost を介して渡され、正常に機能するため、値が渡された場合に限定されているように見えるFORM
ため、URL で何らかの方法で何かが壊れていると思われます。データとクエリがチェックcfdump
され、SQLPlus でクエリを実行するために使用されるものに対してすべてが正しいように見えます。
データベースのバックエンドは Oracle 11g であり、私の知る限り、関連するドライバーはすべて最新です。明らかな問題がすでにチェックされているように見えるので、ここで何が起こっているのかについての考え。