更新记录

1.0.5(2025-06-13) 下载此版本

优化说明文档

1.0.4(2025-06-13) 下载此版本

添加注释

1.0.3(2025-06-13) 下载此版本

优化内容

查看更多

平台兼容性

uni-app

Vue2 Vue3 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
- - - - -
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 快应用-华为 快应用-联盟
- - - - - - - - - - -

lu-sqlite

简介

lu-sqlite 是基于 uni-app 的 SQLite 数据库操作工具库,对 plus.sqlite 进行了 Promise 风格的封装,简化了本地数据库的增删改查等常用操作,适用于 uni-app App 端(安卓/iOS)。

功能特点

  • 支持数据库的打开、关闭、表结构管理
  • 支持数据的插入、查询、更新、删除
  • 所有操作均为 Promise 风格,异步调用更方便
  • 代码结构清晰,易于扩展和维护
  • 统一的错误处理格式,便于前端统一处理
  • 支持表结构变更、批量操作、分页查询等常用功能

目录结构

uni_modules/
└─ lu-sqlite/
   ├─ js_sdk/
   │   └─ sqlite.js      // 主数据库操作工具类
   └─ readme.md          // 说明文档

主要 API

方法名 说明 参数 返回值
openSqlite() 打开数据库 Promise<{code, msg, data}>
closeSqlite() 关闭数据库 Promise<{code, msg}>
createTable(tableName, fields) 创建表 tableName: 表名
fields: 字段定义
Promise<{code, msg}>
addTableField(tableName, field) 新增表字段 tableName: 表名
field: 字段定义
Promise<{code, msg}>
deleteTable(tableName) 删除表 tableName: 表名 Promise<{code, msg}>
insertTableData(tableName, columns, values) 插入数据 tableName: 表名
columns: 字段名
values: 字段值
Promise<{code, msg}>
insertOrReplaceData(tableName, columns, values) 插入或替换数据 tableName: 表名
columns: 字段名
values: 字段值
Promise<{code, msg}>
selectTableData(tableName, condition) 查询数据 tableName: 表名
condition: 查询条件
Promise<{code, msg, data}>
updateTableData(tableName, data, condition) 更新数据 tableName: 表名
data: 更新对象
condition: 条件
Promise<{code, msg}>
deleteTableData(tableName, condition) 删除数据 tableName: 表名
condition: 条件
Promise<{code, msg}>
isTable(tableName) 判断表是否存在 tableName: 表名 Promise<{code, msg, data: boolean}>
getAllTable() 获取所有表信息 Promise<{code, msg, data: Array}>

错误处理

所有方法的 Promise reject 都返回统一格式:

{ code: 错误码, msg: 错误信息, data?: 详细信息 }

前端可统一处理错误码和错误信息。

使用示例

import SQLite from "@/uni_modules/lu-sqlite/js_sdk/sqlite.js";

// 打开数据库
await SQLite.openSqlite();

// 创建表
await SQLite.createTable(
  "users",
  "id INTEGER PRIMARY KEY, name TEXT, age INTEGER"
);

// 插入数据
await SQLite.insertTableData("users", "id, name, age", '1, "张三", 18');

// 查询数据
const res = await SQLite.selectTableData("users");
console.log(res.data);

// 更新数据
await SQLite.updateTableData("users", { name: "李四" }, "WHERE id=1");

// 删除数据
await SQLite.deleteTableData("users", "WHERE id=1");

// 关闭数据库
await SQLite.closeSqlite();

注意事项

  • 使用前需确保 plus.sqlite API 可用(仅 App 端)
  • 建议所有数据库操作都加上异常处理
  • 表结构变更需谨慎,避免数据丢失
  • 插入/更新/删除等操作建议先判断表是否存在

隐私、权限声明

1. 本插件需要申请的系统权限列表:

引入sqlite模块

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

暂无用户评论。

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问