【发布时间】:2013-09-27 08:18:12
【问题描述】:
如何插入这样的字符串:
local Namestring="my mother's gift"
local insertQuery1 =[[INSERT INTO planne_tbl VALUES (']]..Namestring..[[');]]
db:exec( insertQuery1 )
如何在 sqlite 中插入' 符号。
【问题讨论】:
如何插入这样的字符串:
local Namestring="my mother's gift"
local insertQuery1 =[[INSERT INTO planne_tbl VALUES (']]..Namestring..[[');]]
db:exec( insertQuery1 )
如何在 sqlite 中插入' 符号。
【问题讨论】:
通过连接字符串来构造SQL命令,不仅会导致格式问题,还会允许SQL injection attacks。
在 SQL 中使用字符串值的推荐方法是使用参数。 在 Lua 中,它是这样工作的:
local Namestring="my mother's gift"
local insertQuery1 = "INSERT INTO planne_tbl VALUES (?)"
local stmt = db:prepare(insertQuery1)
stmt:bind(1, Namestring)
stmt:step()
stmt:finalize()
(这是不必要的复杂;您可能想为此编写一个辅助函数。)
【讨论】: