識別子が変数と一致する行を選択する必要があります。たとえば、私の変数の値は「myvariable」です(もちろん、uniqueidentifier形式)。ここでcfqueryで "uniqueidentifier"タイプを選択
<cfset current_user_id = "myvariable">
は私の "cfqueryの" コンテンツです:
<cfquery name="findUser" datasource="#SOURCE#">
SELECT
db.[User].UserID
FROM
db.[User]
WHERE
db.[User].UserID = "#current_user_id#";
</cfquery>
それは次のエラーを返します。
[Macromedia][SQLServer JDBC Driver][SQLServer]Invalid column name 'myvariable'.
データとクエリで結構です。 SELECT *
のcfdumpはすべての行を返しますが、WHERE
句を追加するとエラーが発生します。クエリは、WHERE
句であっても、ColdFusion外で正常に動作します。
どちらか私はこれを追加しようとしたが、それは動作しません:
<cfqueryparam value = "#current_user_id#" cfsqltype="cf_sql_idstamp">
は、私が条件と「UNIQUEIDENTIFIER」タイプを選択する知っておくべきものはありますか?たぶん私の変数の型をどうにかして "uniqueidentifier"に設定する必要がありますか?
CFバージョン10,0
ありがとうございます!
値に二重引用符を使用しないでください。だから ''#current_user_id# ''。 cfqueryparamは正常に見えます - それと同じエラーか別のエラーが出ますか?また、どのCF版を使用していますか?9,10,11をタグ付けしました。 –
二重引用符を一重引用符に変更しました。ありがとうございました! –
クエリパラメータの場合、データ型をvarcharに変更してみます。 –