组态软件操作指南 与数据库连接
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第八章与数据库连接
本章内容
创建数据源及数据库
创建表格模板
创建记录体
对数据库的操作
数据集函数在关系库中的应用
概述
本章我们将讲解如何将阀门的状态变化记录到数据库中并进行查询。数据库我们选择Access数据库,记录的内容包括:日期、时间、阀门描述、阀门状态四个字段。我们利用KingSCADA的SQL访问功能来实现。
KingSCADA SQL访问功能实现KingSCADA和其他外部数据库之间的数据传输。提供2种访问方式:一种是记录体的方式,即变量和数据库表中的字段建立绑定关系;一种是数据集方式。
记录体方式就是通过记录体配置项,实现把数据库里面的字段和KingSCADA的变量建立绑定关系。绑定后,可以通过SQL插入或更新函数将绑定变量插入或更新到数据库的对应字段中;也可以通过SQL 查询函数将数据库中对应字段数据查询并保存到绑定变量中,实现KingSCADA和关系数据库的数据交互。记录体方式只能在KingSCADA服务器端应用。
数据集方式就是通过KingSCADA提供的一系列数据集函数,执行标准SQL语句,实现KingSCADA 与关系数据库之间的增、查、删、改等所有数据交互功能,尤其可以通过数据集函数,实现从数据库内查询出符合SQL语句的数据集合,并在报表、曲线中进行批量数据展示。数据集方式支持在KingSCADA服务器端、C/S客户端、WEB上使用。
在这里建议采用数据集方式,更加方便、灵活。
下面具体介绍2种方式的具体使用
第一节记录体方式在关系数据库中的应用(仅参考)
一、创建数据源及数据库
以KingSCADA带的DEMO工程中的mine.mdb数据库为例,首先将mine.mdb文件从DEMO工程中拷贝到我们新建的这个培训工程中。
然后,用Windows控制面板中自带的ODBC Data Sources (32bit)管理工具新建一个Microsoft Access Driver(*.mdb)驱动的数据源,名为:mine,然后配置该数据源,指向刚才拷贝过来的Access数据库(即mydb.mdb),如图8-1所示:
图8-1ODBC数据源的建立
二、创建表及记录体
创建表
用ACCESS打开mine.mdb数据库,在库中新建表“KingTable”,在表中建立三个字段日期时间、液位、温度,如图8-2所示:
图8-2在mine数据库中创建表
日期时间字段为日期时间类型。
液位和温度字段为数字类型,并都设置为单精度浮点型。
创建记录体
记录体是建立数据库中数据表的字段和KingSCADA的变量之间的联系。
第一步:在KingSCADA工程设计器中选择“通用数据源”→“记录体”选型,在右侧内容显示区中单击“新建”按钮,弹出创建记录体对话框,对话框设置如下:
图8-3创建记录体对话框
记录体中定义了Access数据库数据表字段与SCADA变量之间的对应关系,对应关系如下所示:
即:将KingSCADA中\\local\日期时间变量值写到Access数据库表格日期时间字段中;将\\local\liquid_level值写到Access数据库表格液位字段中;将\\local\temperature值写到Access数据库表格温度字段中。
\\local\日期时间=\\local\$Date+“”+\\local\$Time;,表示计算机系统当前的日期和时间。
第二步:单击“确认”按钮完成记录体的创建。
注:记录体中的字段名称必须与表格模板中的字段名称保持一致,记录体中字段对应的变量数据类型必须和表格模板中相同字段对应的数据类型相同。
三、对数据库的操作
1、连接数据库
第一步:在KingSCADA工程设计器的数据词典中定义一个内存整型变量
变量名:DeviceID
变量类型:内存整型
第二步:在画面编辑器中新建一画面,名称为:数据库操作,并在画面上添加一按钮,按钮属性设置如下:
按钮文本:数据库连接
“按钮左键弹起”动画链接设置如下:
图8-4数据连接脚本程序
上述脚本的作用是使SCADA与mine数据源建立了连接(即与mydb.mdb数据库建立了连接)。
在实际工程中将此命令写入:树型目录→脚本→系统脚本→应用程序脚本→应用程序启动时,即系统开始运行就连接到数据库上。
2、断开数据库的连接
在数据库操作画面中添加一按钮,按钮属性设置如下:
按钮文本:断开连接
“按钮左键弹起”动画链接设置如下:
图8-5断开数据库连接脚本程序
在实际应用中将此命令写入:树型目录→脚本→应用程序脚本→应用程序关闭时,即系统退出后断开与数据库的连接。
4、插入记录
我们要将液位和温度定时记录到数据库中,因此利用定时器脚本编写脚本程序即可。
新建一个定时器脚本“定时存储”,每60000毫秒执行一次,编写脚本程序如下:
图8-7插入记录脚本程序
上述脚本的作用是每分钟在数据表KingTable中插入一条新的记录。
5、查询记录
用户如果需要将数据库中的数据调入到KingSCADA中来显示,需要另外建立一个记录体,此记录体的字段名称要和数据库表格中的字段名称一致,连接的变量类型与数据库中字段的类型一致,操作过程如下:
第一步:在KingSCADA工程设计器的数据词典中定义三个内存变量:
a、变量名:日期时间记录
变量类型:内存字符串
b、变量名:液位记录
变量类型:内存实型
c、变量名:温度记录
变量类型:内存实型
第二步:在数据库操作画面上添加三个文本框,在文本框的“字符串输出”动画中分别连接变量日期时间记录、液位记录、温度记录,用来显示查询出来的结果。
第三步:在KingSCADA的通用数据源中定义一个记录体,记录体窗口属性设置如图8-8所示: