更新记录

100(2023-07-25)

100首发


平台兼容性

Vue2 Vue3
×
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
HBuilderX 3.7.9 × × × × × ×
钉钉小程序 快手小程序 飞书小程序 京东小程序
× × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
× × × × × × × × ×



liulusqlite.js

sqlite封装

使用

import sqlite from '@js_sdkliuluhtml5plusliulusqliteliulusqlite.js';

const sqliteDB = new sqlite('数据库名');

方法介绍

openDb() 打开数据库 如果数据库存在则打开数据库,不存在则创建数据库且打开数据库。

isOpen() 监听(判断)数据库是否是开启状态 return bool

closeSQL() 关闭数据库 return


addTable(tabName,sql) 创建表, tabName 表名 不能用数字作为表格名的开头 return sql字符串语句 如: kv型数据(type(取值:int,text,json)sql = CREATE TABLE IF NOT EXISTS config ("key" TEXT PRIMARY KEY NOT NULL UNIQUE, "value" TEXT NOT NULL DEFAULT '', "type" TEXT NOT NULL DEFAULT '');

sql = create table if not exists xinghao( "xinghao_id" INTEGER PRIMARY KEY AUTOINCREMENT UNIQUE, "brand_id" INT NOT NULL DEFAULT '', "xinghao_name" CHAR(32) NOT NULL DEFAULT '', "pinyin" CHAR(32) NOT NULL DEFAULT '', "sehao_name" CHAR(32) NOT NULL DEFAULT '', "number" INT NOT NULL DEFAULT '', "shop_price" INT NOT NULL DEFAULT '', "beizhu" TEXT NOT NULL DEFAULT '' );


getTable() 查询所有数据表名列表 return array


isTable(tabName) 判断某表是否存在 return bool


getField(tabName) 获取某表 的所有字段 列表 另外参考:查找索引和外键: PRAGMA index_list(myTable) 另外参考:查找索引和外键: PRAGMA foreign_key_list(myTable)


getPrimary(tabName) 获取表的主键名 return


dropTable(tabName) 删除表 不管表内有无数据


getCount(tabName,whereArr) 查询tabName表数据记录数 whereArr 数组[{fuhao:'符号=',field:'字段名如id',value:值1}] return 数字


updateSQL(tabName, setData, whereArr) 修改数据: setData(obj) 键值对 whereArr=[{fuhao:'=',field:'user_id',value:user_id}] return 空


deleteSQL(tabName,whereArr) 删除数据表数据 whereArr =[{fuhao:'=',field:'user_id',value:user_id}] return 空


sumSQL(tabName,sumStr,whereArr) 返回 某字段或某SUM语句之和 tabName表名(string), sumStr (string),如;fieldAfieldB whereArr(arr)= [{fuhao:'=',field:'user_id',value:user_id}] return 数字


addSQL(tabName,obj) 添加新数据 obj 键值对 return 空


colSQL(tabName,whereArr,field) 查寻某若干指定列的值 whereArr = [{fuhao:'=',field:'user_id',value:user_id}] field 逗号相隔的字段名(string) return array


mergeSql(tabName,tabs) 合并数据 即insert or ignore插入数据,表中主键字段的已经有数据的跳过, 另外阅读https:blog.csdn.netqq_36373500articledetails125891552 tabs(obj) 要写入的键值对 return 空


getDataList(tabName, num, size,whereArr,orderby) 获取分页数据库数据 ,适合分页的大量数据 或 搜索列表 有 whereArr(array)==[{fuhao:'=',field:'user_id',value:user_id}] 有limit==numsize(num页码,size每页数量), 有orderby(obj) return { paged={more: 0,page: num,size: size,total: 0,count:0},more: 是否还有数据,page: 当前页数,size每页数,total数据总数,count总页数 data:e }


selectDataList(tabName,whereArr,limit,orderby) 查询数据库数据, 适合中数据量 或 限定只取几条数据 且无limitnumsize分页 有whereArr (array) ==[{fuhao:'=',field:'user_id',value:user_id}] 有orderby(obj) 有limit 取几条数据 (是0的话不设置) return array


selectSQL(tabName,whereStr,limit,orderby) 自定义字符串的where语句 查询 另:由于其他查询的where关系 全部是and,该方法为了解决非and及其他复杂的where whereStr,自定义字符串的where语句 limit, 取几条数据,==0时不设置 orderby (obj) 空对象时,不设置 return array


getList(tabName,whereArr) 查询数据库数据 有whereArr 无orderby无limit无limitnumsize分页, 适合小数据量且无需页码无需排序 列表 whereArr=[{fuhao:'=',field:'user_id',value:user_id}] return array


getOne(tabName,whereArr)
查询一条数据 tabName 表名 whereArr=[{fuhao:'=',field:'user_id',value:user_id}] return obj


insertGetOne(tabName,obj) tabName 表名 obj 键值对 return obj


updateGetOne(tabName, setData, whereArr) 原理:update后用whereArr再查询数据库,所以:whereArr中必须带主键 tabName 表名 whereArr=[{fuhao:'=',field:'user_id',value:user_id}] setData 要update的键值对(obj) return obj

------------------KV----------------

kventries(tabName)  
获取全部keyvalue键值对
return obj

kvput(tabName,setData)  
设置值
额外知识点: (当INSERT已经存在的数据时ignore忽略, REPLACE修改)
 tabName 表名
 setData==(object){key: value,key1:value1}
return 空

kvget(tabName,key)  
获取值
 key key键名
return value值  type==json时obj else string  找不到返回null

隐私、权限声明

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

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

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

许可协议

MIT协议

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