如何引用LuaSQL的值?

前端之家收集整理的这篇文章主要介绍了如何引用LuaSQL的值?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
LuaSQL,似乎是Lua中大多数sql数据库系统的规范库,似乎没有任何用于在查询中引用/转义值的工具.我正在编写一个使用sqlite作为后端的应用程序,我喜欢使用类似于 Python’s DB-API指定的接口: @H_502_2@c.execute('select * from stocks where symbol=?',t)

但我甚至会满足于甚至是笨蛋的东西,比如:

@H_502_2@conn:execute("select * from stocks where symbol=" + luasql.sqlite.quote(t))

是否还有其他支持sqlite引用的Lua库? (LuaSQLite3似乎没有.)或者我错过了一些关于Luasql的东西?我担心滚动我自己的解决方案(使用正则表达式或其他东西)并且弄错了.我应该为sqlite3_snprintf写一个包装器吗?

解决方法

我有一段时间没有看过Luasql,但上次我检查它并不支持它.我使用Lua-sqlite3. @H_502_2@require("sqlite3") db = sqlite3.open_memory() db:exec[[ CREATE TABLE tbl( first_name TEXT,last_name TEXT ); ]] stmt = db:prepare[[ INSERT INTO tbl(first_name,last_name) VALUES(:first_name,:last_name) ]] stmt:bind({first_name="hawkeye",last_name="pierce"}):exec() stmt:bind({first_name="henry",last_name="blake"}):exec() for r in db:rows("SELECT * FROM tbl") do print(r.first_name,r.last_name) end

猜你在找的Lua相关文章