精易论坛

标题: sqlite3模块封装 [打印本页]

作者: 大兔崽子    时间: 2024-3-26 18:56
标题: sqlite3模块封装
本帖最后由 大兔崽子 于 2024-3-27 22:14 编辑

sqlite3 是一个本地的轻型数据库,能够支持执行大部分的SQL语句在一些简单的项目上使用,是替代mysql的不错佳品
(毕竟,它不需要额外安装配置数据库,开箱即用)


因为学习使用sql语句有些许成本,而且日常使用中,手写sql语句也不够方便
所以将一些常见的增删改查的命令 进行封装,方便大家的使用

封装的命令如下:
findOne  cha询单体数据
findAll   cha询多条数据库
findCount   cha询记录条数
findSum   对某字段进行cha询求和
findValue  cha询单个字段并直接返回值

update   更新数据(需要配合字段构造器使用)
update2  更新数据 直接手写更新内容


create  写入数据 (需要配合字段构造器使用
delete  删除数据


基本就这些,就个人而言 极大的简化了我的使用成本,希望大家喜欢

===========================分割线===================================
刚好有个项目需要用sqlite ,今天实战用了下模块。有些地方考虑不够,所以对模块进行了更新,对于 create()  update()这种命令 增加了一个 字段构造器的方法,可以很方便的构造字段了
对于 findOne  findAll 的方法,修改了返回值,  之前是返回逻辑型,来判断语句是否执行成功,但是,很不方便,现在是直接返回cha询到的记录条数


===============================分割线======================================
经过手忙脚乱的检查和测试后发现,如果在模块内 存储 Sqlite记录集,然后外部通过模块方法 取出 记录集  进行操作  就会发生闪退,(猜测应该是有内存泄漏)
v3 已经将模块改成了  cha询后直接返回,测试了下,已经没有闪退,问题应该是得以解决了。 不过 可惜  代码的书写就繁琐了一些了。  v1  v2 都不要用。是垃圾代码



v1  (建议直接下载v2)
易Sqlite.zip (289.61 KB, 下载次数: 32)
v2  
易sqlite模块.rar (13.35 KB, 下载次数: 76)
v3
易sqlite模块2.e (27.15 KB, 下载次数: 354)
























作者: Av0x    时间: 2024-3-26 23:34
羡慕大佬 大佬整个小白一键多线程模块啊
作者: 大兔崽子    时间: 2024-3-27 00:00
Av0x 发表于 2024-3-26 23:34
羡慕大佬 大佬整个小白一键多线程模块啊

鱼刺的多线程池  贼好用哇。
作者: Av0x    时间: 2024-3-27 00:04
大兔崽子 发表于 2024-3-27 00:00
鱼刺的多线程池  贼好用哇。

俺狗屁不懂 一窍不通
作者: zifeiyu    时间: 2024-3-27 07:47
666666666666666666
作者: huanhai    时间: 2024-3-27 08:10
看着很牛逼的样子666
作者: wuqingg    时间: 2024-3-27 08:46
事务是必不可少滴
作者: qq1056123185    时间: 2024-3-27 09:00
我记得,sqlite3不支持多进程?
作者: 小虎来了    时间: 2024-3-27 09:59
感谢分享
作者: 一指温柔    时间: 2024-3-27 10:47
感谢分享,很给力!~
作者: 给自己留一片天空    时间: 2024-3-27 20:28
感谢分享,很给力!~
作者: 大兔崽子    时间: 2024-3-27 22:34
wuqingg 发表于 2024-3-27 08:46
事务是必不可少滴

够呛 够呛。 逻辑太复杂的话  我通常就选择直接调用接口了。  处理起来还方便些
作者: 大兔崽子    时间: 2024-3-27 22:35
qq1056123185 发表于 2024-3-27 09:00
我记得,sqlite3不支持多进程?

这个我就不知道了诶。我只知道 它一次只能插入500条记录,  大批量插入的话,能急死人。平时用多线程去调用查询时候 也没见它崩溃。  可能我写的还不够复杂吧
作者: year1970    时间: 2024-3-30 08:49
感谢分享
作者: jtucar    时间: 2024-3-30 12:40
支持开源~!感谢分享
作者: 艾玛克138    时间: 2024-3-30 21:05
感谢老大,太好了
作者: 大兔崽子    时间: 2024-3-30 21:22
wuqingg 发表于 2024-3-27 08:46
事务是必不可少滴

.......我懂你的意思了....  SQL更新  随便一个语句执行 都需要0.5s,简直了 简直了...确实必须要用事务才行。
作者: 大兔崽子    时间: 2024-3-30 22:00
qq1056123185 发表于 2024-3-27 09:00
我记得,sqlite3不支持多进程?

是的不支持,  在线程池中。 用记录集 读数据的时候  直接就会闪退。  必须加上许可证
作者: wuqingg    时间: 2024-3-31 12:13
大兔崽子 发表于 2024-3-30 21:22
.......我懂你的意思了....  SQL更新  随便一个语句执行 都需要0.5s,简直了 简直了...确实必须要用事务 ...

同时更新两张表的时候或者大量的SQL需要执行的时候你就知道事务的好处了
作者: change2018    时间: 2024-3-31 16:04
good!!!!!!!!!!
作者: change2018    时间: 2024-4-2 10:08
很值得学习
作者: dangerace    时间: 2024-4-2 14:35
你们那里用中文命名函数要判多少年?
作者: 大兔崽子    时间: 2024-4-2 15:28
dangerace 发表于 2024-4-2 14:35
你们那里用中文命名函数要判多少年?

哈哈哈哈哈,因为,之前php模块的 cha询方法都是这个名字。所以。用习惯了
而且。一时间想不出这么多名字
作者: 网络注册会员    时间: 2024-4-5 10:06

作者: nunu0530    时间: 2024-4-5 14:09
666666666666666666
作者: wgqxj    时间: 2024-4-8 00:14
谢谢分享
作者: hack315    时间: 2024-4-8 08:45
谢谢分享

作者: hack315    时间: 2024-4-8 08:45
谢谢分享
谢谢分享
谢谢分享
谢谢分享

作者: qinyu1    时间: 2024-4-8 22:01
感谢 已经用上了 但是 insert 这个木有 有点儿不方便写入数据 感谢大佬的无私开源
作者: 卿书    时间: 2024-4-9 00:05
666666666666666666666666666666666666666666666
作者: 卿书    时间: 2024-4-9 00:05

作者: wgqxj    时间: 2024-4-15 09:06
谢谢分享
作者: lvdout    时间: 2024-4-17 20:12
可以批量录入吗
作者: welkin    时间: 2024-4-23 16:46
大佬厉害!感谢分享
作者: emptyempty    时间: 2024-5-1 17:40
谢谢分享
作者: Asuer    时间: 2024-5-4 06:35
能同时在本地 多线程增删改查 设置密码就好了
作者: 大兔崽子    时间: 2024-5-4 13:23
Asuer 发表于 2024-5-4 06:35
能同时在本地 多线程增删改查 设置密码就好了

在多线程里面 倒是是可以用。  不过需要加许可证才行。   设置密码的话  这个 改改源码  连接数据库的时候 设置密码即可
作者: lelele1979    时间: 2024-5-18 11:30
闪退问题已解决, 用v3的那个就行
作者: qq73s5456    时间: 2024-5-30 09:36
sqlite3 是一个本地的轻型数据库
作者: badlwolf    时间: 2024-5-30 16:49
感谢分享!!!!
作者: 616    时间: 2024-6-4 14:57
cha询后有没有释放?
作者: cs潇潇    时间: 2024-6-5 14:22
正好用得上,真是巧,刚在学sql就有人打包成模块了
作者: w1285378872    时间: 2024-6-6 11:32
请问下  我用着用着就变成 attempt to write a readonly database(只读模式了,没法写内容)这种要怎么设置
作者: 大兔崽子    时间: 2024-6-6 11:45
w1285378872 发表于 2024-6-6 11:32
请问下  我用着用着就变成 attempt to write a readonly database(只读模式了,没法写内容)这种要怎么设 ...

这应该是 多次连接   上一个连接没断开吧。   sqlite 数据库的文件 被占用状态。
作者: w1285378872    时间: 2024-6-6 11:51
大兔崽子 发表于 2024-6-6 11:45
这应该是 多次连接   上一个连接没断开吧。   sqlite 数据库的文件 被占用状态。 ...

请问下 这种要怎么恢复正常,关闭程序,重新连接还是这种状态
作者: 大兔崽子    时间: 2024-6-6 11:55
w1285378872 发表于 2024-6-6 11:51
请问下 这种要怎么恢复正常,关闭程序,重新连接还是这种状态

...不应该啊   你怎么写的  怎么会一直占用呢
作者: yangchangli    时间: 2024-6-12 14:01
支持开源~!感谢分享
作者: yangchangli    时间: 2024-6-13 10:36
好东西,感谢分享
作者: 胖虎O    时间: 2024-6-14 00:39
感谢分享了
作者: wrnmb001    时间: 2024-6-18 15:56
学习了,感谢分享。
作者: pq9999    时间: 2024-6-20 07:32
谢谢分享,学习学习
作者: 凌伤    时间: 2024-6-20 07:51
谢谢分享,学习学习
作者: wrnmb001    时间: 2024-6-20 11:21

作者: ciiks15    时间: 2024-6-27 20:29

谢谢分享啊
作者: LLZWWY    时间: 2024-6-28 22:59
感谢大佬无私分享
作者: 瑾凡    时间: 2024-7-1 19:38

作者: chinakafei    时间: 2024-7-3 23:42
没有事务?
作者: 维度天空    时间: 2024-7-4 11:54

作者: 维度天空    时间: 2024-7-4 11:55

作者: liqiyuan    时间: 2024-7-9 09:44
初始化后没有关闭的方法吗?
作者: liqiyuan    时间: 2024-7-14 09:43
findSum好像是有问题的,拼接出来的sql语句有语法错误。
作者: wgqxj    时间: 2024-7-27 14:22
谢谢分享
作者: leidy    时间: 2024-7-29 18:12
#在这里快速回复#支持开源~!感谢分享
作者: 1600402543    时间: 2024-8-15 17:11
支持大佬啊!!!!!!!!
作者: 雨落无尘    时间: 2024-9-8 15:54

感谢大佬无私分享
作者: q1767995506    时间: 2024-9-9 17:40
感谢大佬分享感谢大佬分享感谢大佬分享感谢大佬分享
作者: w1cy19    时间: 2024-10-17 17:08
佬分享感谢大佬分享感谢大佬分享感谢大佬分享
作者: w1cy19    时间: 2024-10-18 10:42

没有清空吗  单独删除  删多了也会出问题
作者: w1cy19    时间: 2024-10-18 10:42

初始化后没有关闭的方法吗?
作者: w1cy19    时间: 2024-10-18 13:42
添加数据有点慢哦   非常慢
作者: 大兔崽子    时间: 2024-10-18 21:38
w1cy19 发表于 2024-10-18 13:42
添加数据有点慢哦   非常慢

是的呢。  批量添加数据的话   建议开启事务,  自行增加 3个事务相关的方法即可,   用法就是  开启事务()  批量提交数据()   提交事务()    这样就能快很多

作者: 大兔崽子    时间: 2024-10-18 21:39
w1cy19 发表于 2024-10-18 10:42
初始化后没有关闭的方法吗?

默认是  关闭的时候  自动关闭来着   也可以自行加一下蛤
作者: 大兔崽子    时间: 2024-10-18 21:39
w1cy19 发表于 2024-10-18 10:42
没有清空吗  单独删除  删多了也会出问题

啊?  清空是什么,我没用过 一般就是增删改查
作者: w1cy19    时间: 2024-10-20 13:53
我在研究一个超快的添加  速度非常快
作者: w1cy19    时间: 2024-10-20 13:54
大兔崽子 发表于 2024-10-18 21:39
啊?  清空是什么,我没用过 一般就是增删改查

清空表  表数据全部删掉
作者: 易飞鸟    时间: 2024-10-20 22:41
wuqingg 发表于 2024-3-27 08:46
事务是必不可少滴

写个单机的小软件 根本用不到事务
作者: 又菜雞又爱玩    时间: 2024-10-24 00:06
我来试试
作者: zboyy866    时间: 2024-10-27 00:39
写个单机的小软件 根本用不到事务
作者: jiangjiang123    时间: 2024-10-31 14:19
6666666666666666666
作者: yu2481    时间: 2024-11-22 17:18
666666666666666
作者: jy3162    时间: 2024-11-24 12:29
事务是必不可少滴
作者: 琉璃苣    时间: 2024-12-6 09:46
事务是必不可少滴
作者: 琉璃苣    时间: 2024-12-6 11:35
事务是必不可少滴
作者: 琉璃苣    时间: 2024-12-7 08:30
支持开源~!感谢分享
作者: yu2481    时间: 2024-12-9 11:12
66666666666666666666666666666
作者: yu2481    时间: 2024-12-9 11:12
66666666666666666666666666666666666666666
作者: 真IKUN    时间: 2024-12-14 01:10
感谢分享,很给力!
作者: antoni    时间: 2024-12-31 23:09
感谢分享,很给力!~

作者: antoni    时间: 2024-12-31 23:12
感谢分享,很给力!~

作者: 百事可乐2018    时间: 2025-1-24 12:49
666666666666666666
作者: leroy勒罗伊    时间: 2025-1-24 14:10
很好很强大
作者: mylo    时间: 2025-3-9 22:02
事务是必不可少滴
作者: wffhhy    时间: 2025-5-5 14:04
不错不错,学习下!谢谢分享!
作者: maoxu789    时间: 4 天前
学习下看看好用户不




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4