实时数据库在HMI应用中必不可少,传统的Intouch,组态王等组态软件早期都是利用本机的二进制文件来做实时数据库存储。今天我将带领大家利用2行代码完成一个最简单的实时数据库。让大家了解实时数据库的基本运行机制和原理。在一台windows 10的机器上,创建两个bat(批处理)文件,一个名为set-db.bat,另外一个名为get-db.bat。这两个批处理文件,顾名思义一个是数据库插入数据,另外一个是数据库查询数据。见下图:
接下来跟我一起写两行最简单的代码,实现这个世界上最简单的实时数据库。
01首先用记事本打开set-db.bat文件,写入如下的代码:
这一行代码为实时数据库的插入数据。
注释:echo 为文本插入指令,可以看到就是把当前日期和时间按照特定格式化后加上/带上时间,%1和%2为外部bat运行时候的参数1和参数2,然后把这组数据插入到db.txt文件,而这个db.txt就是我们今天的主角,最简单的实时数据库,而这个db.txt如果程序发现没有的话会自动建立,同时这个db.txt实时数据库文件会在同一级目录中。
02然后我们再打开get-db.bat文件,写入如下代码:
这一行代码为实时数据库查询数据
注释:findstr是dos下查询命令,其中/i为不区分大小写,而%2为参数2,%1为参数1,db.txt则是我们这个实时数据库。
03接下来,就让我们看看如何使用这两个bat文件测试我们最简单实时数据库这2个bat文件使用方法:Set-db.bat 空格 (参数1) (参数2)参数1(必须)为数据变量的名字,例如 tag1 或者 FIT1001,不能以数字开头并且不能包含空格和特殊字符。参数2(必须)为这个变量的数值,例如整型 100,或者浮点型98.5,或者文字 剑指工控,是以文本形式存储。以上两个参数为必须,如果忽略任何一个参数,实时数据库的参数列将插入空数值。
这个时候打开db.txt可以看到我们刚刚插入的那些数据和变量。
Get-db.bat 空格(参数1)(参数2)参数1(必须)为变量名字,例如tag1或者FIT1001,必须是实时数据库中存在的变量名参数2(可选)为日期和时间,这个属于模糊参数,从日期到时间。例如2022-02-15 或者 2022-02-15/09 或者2022-02-15/09:30 或者 2022-02-15/09:30:05
注释:如果查询某一天数据,可以写成2022-02-15,如果查询某一小时数据可以写成2022-02-15/09
如果想要看实时数据库全部变量和数据,可以把参数1写为* 而参数2为空
至此我带大家通过2行代码完成了一个最简单实时数据库,如果大家对此有什么需要讨论欢迎大家加入剑指工控技术群讨论,如果大家对这个代码比较感兴趣,可以入群后找群管理员获取。