开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 14602|回复: 116
收起左侧

[易源码分享] mysql连接池(支持库IO版),json返回版

[复制链接]
结帖率:89% (8/9)
发表于 2021-3-1 11:35:33 | 显示全部楼层 |阅读模式   山西省太原市
分享源码
界面截图: -
是否带模块: -
备注说明: -
本帖最后由 Mruos 于 2021-3-1 17:19 编辑

使用的是mysql支持库

特点就是:

和以往的连接池不同,以往的连接池给你创建了连接,使用时需要获取连接,使用完毕后要自己归还连接,以及查询语句还要释放记录集。

本模块,执行sql无需去获取和归还连接,查询语句返回json数据,并自动归还了连接和记录集,简单说执行sql即用即走。如:

sql_do("select * from userinfo limit 2",log_json,errmsg)

参数log_json,便可以接收查询语句的查询结果的json数组,支持基本所有的myql数据类型,自动转换成json的数值、浮点、逻辑、文本型内容,数组内容为json数组,每组为一个json对象,以字段名为属性名,方便之后解析json直接取数据使用。

执行失败,会返回sql错误的原因。

调试输出(json):

[{"id":1,"name":"小明","age":10},{"id":2,"name":"小李","age":14}

只需要json解析了即可使用。

11.png

sql_do_normal()会带状态返回json数据,可以直接返回给前端使用。

{"errcode":200,"errmsg":"success","data":[{"id":1,"name":"小明","age":10}]}   

errcode:200/success;101/busy;102/error sql

getIndex()

会返回一个连接索引以及mysql连接句柄,方便需要使用mysql库其他命令时使用。使用本方法获取到的索引,使用后记得通过returnIndex()归还。注意归还的是索引不是mysql句柄,如果查询获取了记录集也记得通过mysql支持库的:释放记录集()进行释放,以免内存泄漏


MySqlPool_支持库io版.zip (626.69 KB, 下载次数: 415)

点评

看了一下,线程内的延时几乎全用了程序延时,这个耗内存,建议修改   广东省汕头市  发表于 2021-3-21 21:22
给的模块不齐全,第二个就是getdata str文本默认uft8编码一遍,这里是致命的bug,希望下次添加一个选项   广东省汕头市  发表于 2021-3-21 00:42
支持多线程,无需许可证   山西省太原市  发表于 2021-3-4 21:07
这个这么强,咋没人察觉。bl-mid-proxy中间件,https://bbs.125.la/forum.php?mod=viewthread&tid=14668697&extra=   山西省太原市  发表于 2021-3-4 10:35
heart(),放到周期线程里调用,保持心跳。建议60秒调用一次即可。   山西省太原市  发表于 2021-3-1 16:44

评分

参与人数 7好评 +5 精币 +12 收起 理由
yoyoHaso + 1 支持开源~!感谢分享
734108950 + 2 感谢分享,很给力!~
司徒西 + 1 + 2 支持开源~!感谢分享
金胖子 + 1 + 2 支持开源~!感谢分享
qq729777703 + 1 + 2 支持开源~!感谢分享
zhifu3158 + 1 + 2 感谢发布原创作品,精易因你更精彩!
xxdahai + 1 + 1 谢谢分享,可以再多点判断,当连接池内某个连接闲置超60秒,进行一次心跳操作,减少I/.

查看全部评分


本帖被以下淘专辑推荐:

结帖率:99% (152/153)

签到天数: 16 天

发表于 2023-2-14 15:19:17 | 显示全部楼层   广东省江门市
自动归还连接了,那怎么做数据库事务?
回复 支持 反对

使用道具 举报

结帖率:100% (3/3)

签到天数: 6 天

发表于 2022-12-15 05:15:40 | 显示全部楼层   山东省潍坊市
这个这么强,咋没人察觉。
回复 支持 反对

使用道具 举报

发表于 2022-12-13 20:58:46 | 显示全部楼层   江苏省徐州市
支持开源~!感谢分享
回复 支持 反对

使用道具 举报

签到天数: 5 天

发表于 2022-5-26 14:27:17 | 显示全部楼层   重庆市重庆市
谢谢分享
回复 支持 反对

使用道具 举报

签到天数: 5 天

发表于 2022-5-14 23:08:25 | 显示全部楼层   重庆市重庆市
谢谢分享!!!!!
回复 支持 反对

使用道具 举报

结帖率:81% (26/32)

签到天数: 2 天

发表于 2022-3-15 08:00:50 | 显示全部楼层   上海市上海市
新技能已get√
回复 支持 反对

使用道具 举报

结帖率:81% (26/32)

签到天数: 2 天

发表于 2022-3-7 03:01:27 | 显示全部楼层   上海市上海市
感谢分享,很给力!~
回复 支持 反对

使用道具 举报

发表于 2021-11-27 17:52:12 | 显示全部楼层   云南省西双版纳傣族自治州
微核的zc模板
回复 支持 反对

使用道具 举报

结帖率:64% (7/11)

签到天数: 3 天

发表于 2021-10-30 19:43:42 | 显示全部楼层   广东省惠州市
使用了段时间  发现会异常掉线   Lost connection to MySQL server during query   数据库报断开链接提示
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表