我正在使用coldfusion将struct(键值对)的内容插入到数据库表中。这是我的代码:
<cfloop collection="#results#" item="ID" >
<cfquery name="insertStuff" datasource="myDataSource">
INSERT INTO web..Stuff (ID, Name)
VALUES (#ID#, #results[ID]#)
</cfquery>
</cfloop>
这看起来很简单......但我收到以下错误:
Incorrect syntax near 'VA'.
有什么想法吗?
答案 0 :(得分:10)
你真的应该考虑参数化你的数据。
<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>
答案 1 :(得分:2)
我想我可能已经解决了......忘记了引号,它们都是varchar字段: - /
<cfloop collection="#results#" item="ID" >
<cfquery name="insertStuff" datasource="myDataSource">
INSERT INTO web..Stuff (ID, Name)
VALUES ('#ID#', '#results[ID]#')
</cfquery>
</cfloop>