Fastweb - Lua操作SQLite数据库

本文演示FastWeb网站开发中处理SQLite数据库

示例演示如何创建、查询、删除与更新,SQL在文章底部。

Lua 复制代码
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))
相关推荐
专吃海绵宝宝菠萝屋的派大星6 小时前
使用postman测试自己编写的mcp服务
测试工具·lua·postman
一个有温度的技术博主10 小时前
Lua语法详解:从变量声明到循环遍历的避坑指南
redis·缓存·lua
上海合宙LuatOS10 小时前
LuatOS扩展库API——【exmodbus】MODBUS协议
物联网·lua·luatos
一个有温度的技术博主11 小时前
Lua语法进阶:函数封装与条件控制的艺术
redis·分布式·缓存·lua
搜佛说2 天前
比SQLite更快,比InfluxDB更轻:sfsDb的降维打击
jvm·数据库·物联网·架构·sqlite·边缘计算·iot
小李云雾2 天前
FastAPI 后端开发:文件上传 + 表单提交
开发语言·python·lua·postman·fastapi
曼巴UE52 天前
Unlua 官方案例
c++·ue5·lua·ue
Austindatabases2 天前
SQLite需要初始化参数,怎么调优-- SQLite 五脏俱全系列 (1)
数据库·sqlite
列星随旋3 天前
基于 Redis + Lua,实现“多维度原子限流”(令牌桶 + 滑动窗口)
java·redis·lua
上海合宙LuatOS3 天前
LuatOS扩展库API——【exgnss】GNSS定位
物联网·lua·luatos