对coldfusion来说,单引号问题是比较头痛的事。因为它的标准比较多,有些变量能自动处理,如:form变量。有些又不行。所以搞到新上手的人有些糊涂。
建议使用cfqueryparam来解决这个问题。我测试了一下,cfqueryparam使用了参数代入的形式来处理变量。而且不用考虑里面是否有单引号,因为它能自动处理。
<cfquery datasource="abc">
update table1
set customername = <cfqueryparam CFSQLType="CF_SQL_VARCHAR" value="#yourval#">
where id=1
</cfquery>
虽然写法有些不舒服,但是不用烦那个单引号是值得的。
如果是用coldfusion 9的朋友,建议使用cfscript,因为代码看起来更加清爽。query的时候,更加直接。