首页| 论坛| 消息

标题:Qt编写气体安全管理系统18-数据库设置
作者:liudianwu
日期:2019-11-26 09:13
内容:

一、前言
作为一个管理系统,数据库肯定是不可或缺的,Qt内置的sqlite数据库已经是够用的,而且本人亲测数据量能支持亿级别,而不是像网上很多人说的千万级别,我模拟过一亿多条数据,依然能够很好的查询,而且还是在一张表哦,不过单文件好大,2G多,性能上相对于几百万条,肯定要差,但是这种亿级别的情况还是很少的啦,也是建议存储到千万级别就可以的,超过的就做自动清理早期数据。
为了兼容性和拓展性,本系统除了支持默认的sqlite数据库以外,还支持mysql数据库,至于sql server数据库,PostgreSQL数据库等,都做了对应的接口,具体还没测试过,目前电脑上已经安装了30多个Qt版本,各种VS版本,够多的了,暂时没有打算安装其他几个数据库来测试,这个多数据库的切换支持功能,主要在Qt封装好的数据库类,不得不说这就是Qt的功劳,唯一要注意的是各种数据库之间的细微差别,比如查询记录的时候,时间范围条件,sqlite使用的是datetime(StartTime),而mysql使用的是unix_timestamp(StartTime),这种细微的差别可以在具体的代码处写判断处理即可。
在数据库设置的地方,特意增加了两个按钮,一个是连接测试,用来测试数据库服务器是否通,判断填写的数据库服务器信息是否正确,所有的数据库客户端软件也都有这个功能,这样可以保证在填写阶段就排除掉不正确的信息;还有一个按钮是初始化数据库,功能就是执行sql脚本来生成新的数据库文件,他是先删除原有的数据库,然后执行脚本生成全新的数据库文件。
皮肤开源:[https://gitee.com/feiyangqingyun/QWidgetDemo](https://gitee.com/feiyangqingyun/QWidgetDemo) [https://github.com/feiyangqingyun/QWidgetDemo](https://github.com/feiyangqingyun/QWidgetDemo)
文件名称:styledemo
体验地址:[https://gitee.com/feiyangqingyun/QWidgetExe](https://gitee.com/feiyangqingyun/QWidgetExe) [https://github.com/feiyangqingyun/QWidgetExe](https://github.com/feiyangqingyun/QWidgetExe)
文件名称:bin_sams.zip
二、功能特点
1. 采集数据端口,支持串口端口+网络端口,串口支持自由设置串口号+波特率,网络支持自由设置IP地址+通讯端口,每个端口支持采集周期,默认1秒钟一个地址,支持设置通讯超时次数,默认3次,支持最大重连时间,用于重新读取离线的设备。
2. 控制器信息,能够添加控制器名称,选择 ..

回复 发表
主题 版块