跳到主要内容

zm.SQLiteUpdate 更新SQLite3数据

🎯功能

更新SQLite3数据, 支持多种参数格式

📜语法

结果 = zm.SQLiteUpdate(数据库路径, 数据表名, 数据, 条件)

📥参数

参数数据类型解释
数据库路径字符串数据库文件所在路径
数据表名字符串要操作的数据表名称
数据字符串新的数据, 单个字段可以用"字段名=值", 例如"name='b'", 多个字段可以用{"字段名":字段值, ...}, 例如{"name":"张三", "age":18}
条件字符串字符串可以写"id=1"或者"WHERE id=1", 多字段并且条件{"id":1, ...}, 多条件或关系{{"id":1, "name":"a"}, ...}, 多条件IN关系{"id":{1,10}, "age":{10,20}}

📤返回

数值型 ,返回数据库变化行数, 出错失败返回null

💡示例

Import "zm.luae" //导入插件,只需执行一次
zm.Init //初始化插件,只需执行一次

Dim DBpath = "/sdcard/Pictures/zimao.db"
dim tbl = "student"
Dim ret

//执行SQL: UPDATE student SET name='a' WHERE id=2;
TracePrint zm.SQLiteUpdate(DBpath, tbl, "name='a'", "id=2") //id=2等同于WHERE id=2

//执行SQL: UPDATE student SET name='a' WHERE id=2 AND age=20;
TracePrint zm.SQLiteUpdate(DBpath, tbl, "name='a'", {"id":2, "age":20})

//执行SQL: UPDATE student SET name='a' WHERE (id=2 AND age=20) OR (id=3 AND age=30);
TracePrint zm.SQLiteUpdate(DBpath, tbl, "name='a'", {{"id":2, "age":20}, {"id":3, "age":30}})

//执行SQL: UPDATE student SET name='a' WHERE id IN (3,4) AND age IN (30,40);
TracePrint zm.SQLiteUpdate(DBpath, tbl, "name='a'", {"id":{3,4}, "age":{30,40}})

//执行SQL: UPDATE student SET name='a', age=22 WHERE id>2;
TracePrint zm.SQLiteUpdate(DBpath, tbl, {"name='a'", age=22}, "id>2")

📘备注

  • V4.2514: 加入命令