-->ColdFusion 初级教程-->使用动态查询参数

ColdFusion

后页 前页
目录
北极星书库
使用动态查询参数


通过使用动态参数(变量)动态地确定SQL语句的内容,你可以充分利用CFQUERY标签的强大功能。动态参数包括Form自段,URL参数,和CGI环境变量。


SQL语句中包含动态参数时要将其扩在井号(#)中,如#State#。当ColdFusion遇到扩在井号中的文本时,就搜索所有的Form变量,URL变量,cookies变量,Client变量和CGI变量,寻找与井号内相匹配的变量名。找到之后,即用变量的值代替变量名。


例子:动态SQL


如果你建立了一个表单,用户用它来根据名字搜索员工信息,你可以使用下面的动态SQL语句:


SELECT *


FROM Employees


WHERE LastName = ‘Form.LastName#’


如果用户在LastName字段中输入”Rucker”,则对数据库执行的SQL语句为:


SELECT *


FROM Employees


WHERE LastName = ‘Rucker’


使用单引号


在上面的例子中你已经看到,参数Form.LastName扩在单引号中。对字符串来说, 这是必须的,对数字则不需要。那么当一个参数中本身包含一个或多个单引号时会不会产生错误呢?这时需要特殊的处理。ODBC允许在扩在单引号中的字符串里用两个连续的单引号代表一个单引号。但在ColdFusion中,你不需要作这种处理。在把参数包含在SQL语句中之前,ColdFusion会自动将单引号替换为两个连续的单引号。


注意:在特殊情况下,你也许不需要将单引号自动替换,这时可以使用PreserveSingleQuotes函数。


后页
前页
目录
北极星书库