Reputation: 83063
I'm using coldfusion to insert the contents of a struct (key-value pairs) into a database table. This is my code:
<cfloop collection="#results#" item="ID" >
<cfquery name="insertStuff" datasource="myDataSource">
INSERT INTO web..Stuff (ID, Name)
VALUES (#ID#, #results[ID]#)
</cfquery>
</cfloop>
This seems simple enough... but I'm getting the following error:
Incorrect syntax near 'VA'.
Any ideas?
Upvotes: 0
Views: 285
Reputation: 1642
You really ought to think about parameterising your data too.
<cfloop collection="#results#" item="ID" >
<cfquery name="insertStuff" datasource="myDataSource">
INSERT INTO web..Stuff (ID, Name)
VALUES (
<cfqueryparam cfsqltype="cf_sql_varchar" value="#ID#">,
<cfqueryparam cfsqltype="cf_sql_varchar" value="#results[ID]#">)
</cfquery>
</cfloop>
Upvotes: 10
Reputation: 83063
I think I may have solved it... forgot the quotes, and they're both varchar fields :-/
<cfloop collection="#results#" item="ID" >
<cfquery name="insertStuff" datasource="myDataSource">
INSERT INTO web..Stuff (ID, Name)
VALUES ('#ID#', '#results[ID]#')
</cfquery>
</cfloop>
Upvotes: 2