Fastweb - Lua操作SQLite数据库
·
本文演示FastWeb网站开发中处理SQLite数据库
示例演示如何创建、查询、删除与更新,SQL在文章底部。
local dkjson = require("dkjson")
local db = sqlite_db.new()
-- 清空示例
function sqlite_delete()
-- 清空数据
local ppst = db:setsql("DELETE FROM users")
ppst:update()
end
-- 插入数据
function sqlite_insert()
local ppst = db:setsql("INSERT INTO users(username,password)VALUES(?,?)")
-- 文本
ppst:set_str(1,"fastweb")
ppst:set_str(2,"123456")
ppst:update()
end
-- 更新数据
function sqlite_update()
local ppst = db:setsql("UPDATE users SET password = ? WHERE username = ?")
ppst:set_str(1,"666666")
ppst:set_str(2,"fastweb")
ppst:update()
end
-- 查询数据
function sqlite_select()
local ppst = db:setsql("SELECT * FROM users WHERE id > 0")
ppst:set_i32(1,0)
-- 查询结果
local result = ppst:query();
local users = {}
while result:next() do
local user = {
username = result:get("username"),
password = result:get("password"),
}
table.insert(users,user)
end
return users;
end
-- 打开
if db:open("data.db") == false then
response:send("sqlite open failed,"..db:last_error())
return
end
-- 创建表
local ppst = db:setsql("CREATE TABLE users(id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, username TEXT, password TEXT );")
if ppst ~= nil then
ppst:update()
end
--sqlite_delete()
sqlite_insert()
sqlite_update()
sqlite_select()
local users =sqlite_select()
response:send(dkjson.encode(users))
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐

所有评论(0)