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))
相关推荐
交流QQ:4877392786 小时前
基于YOLOv9的深度学习道路缺陷检测技术:融合DCNv4、自研BSAM注意力与自适应阈值焦点...
sqlite
小雨下雨的雨7 小时前
第5篇:Redis事务与Lua脚本
redis·junit·lua
BuHuaX12 小时前
Lua入门
开发语言·unity·junit·c#·游戏引擎·lua
码出钞能力14 小时前
SQLite3在NFS下会不会导致文件写乱?
sqlite
编程大师哥14 小时前
如何快速上手Django?3 小时从 0 到 1 做出第一个 Web 项目(小白友好版)
前端·django·sqlite
根哥的博客2 天前
编译nginx-1.28.0支持lua语法
nginx·lua·openresty·nosql注入漏洞
8Qi82 天前
Redis之Lua脚本与分布式锁改造
java·redis·分布式·lua
曲幽2 天前
Flask数据库操作进阶:告别裸写SQL,用ORM提升开发效率
python·sql·sqlite·flask·web·sqlalchemy
IMPYLH2 天前
Lua 的 tonumber 函数
开发语言·笔记·后端·junit·游戏引擎·lua
Tzarevich2 天前
从 Mobile First 到 AI First:自然语言驱动数据库操作的新范式
sqlite·ipython