次の CFML を実行しようとしています。
<cfquery name="koppelData" datasource="#request.DataSource#">
INSERT INTO t_user_profile
(Username, ProfileID, AanvraagID)
VALUES
(<cfqueryparam cfsqltype="cf_sql_varchar" value="#FORM.username#">,
<cfqueryparam cfsqltype="cf_sql_integer" value="#laatste#">),
<cfqueryparam value="#FORM.vragenlijst#" cfsqltype="cf_sql_integer" >)
</cfquery>
これにより、次のエラーがスローされます (SQL サーバーの私のバージョンはオランダ語です)。
[Macromedia][SQLServer JDBC Driver][SQLServer]De INSERT-instructie bevat meer kolommen dan er waarden zijn opgegeven in de VALUES-component. VALUES コンポーネントの moet overeenkomen の Het aantal waarden は、de INSERT-instructie の het aantal kolommen に出会いました。
これは基本的に次のように変換されます。INSERT 命令には、VALUES ステートメントで指定された値があるため、より多くの列が含まれます。VALUES ステートメントのフィールド数は、INSERT ステートメントのフィールド数と等しくなければなりません。
私は何を間違えましたか?
編集:
次のように、一重引用符は役に立ちません。
Error Executing Database Query.
[Macromedia][SQLServer JDBC Driver]Invalid parameter binding(s).
The error occurred in C:\Users\Adm1n\Adobe ColdFusion Builder workspace\PASS\jsexec\maak_lid.cfm: line 52
50 : '<cfqueryparam cfsqltype="cf_sql_varchar" value="#FORM.username#">',
51 : <cfqueryparam cfsqltype="cf_sql_integer" value="#laatste#">),
52 : <cfqueryparam value="#FORM.vragenlijst#" cfsqltype="cf_sql_integer" >
53 : )
54 : </cfquery>
見つかりました: 2 番目のパラメーターの最後の文字を見てください:
<cfqueryparam cfsqltype="cf_sql_integer" value="#laatste#">),
それはtyp0でした:-S