在其中插入带撇号的值的正确SQL语法是什么?
Insert into Person
(First, Last)
Values
'Joe',
'O'Brien'
我一直遇到错误,因为我认为O后面的撇号是该值的结尾标记。
16
请确认您没有对SQL注入攻击开放。尽可能使用参数。
—
安德鲁
您正在使用哪种脚本语言?例如,PHP中有一些函数可以为您正确执行此操作。
—
philfreo
在这里与Andrew达成一致:我希望这个问题仅与通过SQL客户端或“查询浏览器”等运行SQL有关,而实际上不在生产代码中。不使用参数化语句是愚蠢的。
—
charstar
它实际上是在代码中..如果我有一个参数化查询,我是否不必做同样的事情?
—
leora
负。根据所使用的数据库和驱动程序,参数隔离的处理方式可能有所不同,但是参数化语句中的参数不需要转义。参见en.wikipedia.org/wiki/SQL_injection#Preventing_SQL_injection
—
charstar