KingSCADA初级教程-第八章-与数据库连接_第1页
KingSCADA初级教程-第八章-与数据库连接_第2页
KingSCADA初级教程-第八章-与数据库连接_第3页
KingSCADA初级教程-第八章-与数据库连接_第4页
KingSCADA初级教程-第八章-与数据库连接_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第八章与数据库连接本章内容ffl创建数据源及数据库ffl创建表格模板EQ创建记录体ffl对数据库的操作概述本章我们将讲解如何将阀门的状态变化记录到数据库中并进行查询。数据库我们选择Access数据库,记录的内容包括:日期、时间、阀门描述、阀门状态四个字段。我们利用CingSCADA3.1的SQL访问功能来实现。KingSCADA3.1SQL访问功能主要实现KingSCADA3.1和其他外部数据库(通过ODBC访问接口)之间的数据传输,它包括SQL访问管理器和相关的SQL函数。SQL访问管理器用来建立数据库字段和组态王变量之间的联系,包括“表格模板”和“记录体”两部分。通过表格模板在数据库表中建立相应的数据表;通过记录体建立数据库字段和组态王变量之间的联系。同时允许组态王通过记录体直接操作数据库中的数据。第一节创建数据源及数据库首先外建一个数据库,这里我们选用Access数据库(路径:d:\培训,数据库名为:mydb.mdb)。然后,用Windows控制面板中自带的ODBCDataSources(32bit)管理工具新建一个MicrosoftAccessDriver(*.mdb)驱动的数据源,名为:mine,然后配置该数据源,指向刚才建立的Access数据库(即mydb.mdb),如图8-1所示:图8-1ODBC数据源的建立第二节创建表格模板及记录体创建表格模板表格模板是在数据库表中创建数据表的模板,利用此模板在数据库中创建我们需要的数据表。第一步:在KingSCADA3.1开发环境树型目录中选择“通用数据源”一“表格模板”选型,在右侧内容显示区中单击“新建”按钮,在弹出的创建表格模板对话框中建立四个字段,如图8-2所示:图8-2创建表格模板对话框四个字段的数据类型都为字符串/文本类型。第二步:单击“确认”按钮完成表格模板的创建。建立表格模板的目的是定义数据库格式,在后面用到SQLCreatTable()函数时以此格式在Access数据库中自动建立表格。如果我们在数据库中只需要建一次表就可以,那么可以直接在数据库中创建表即可,而无需利用表格模板创建表,也就是说在使用KingSCADA的数据库功能的时候表格模板并不是一定要用的。创建记录体记录体是建立数据库中数据表的字段和KingSCADA的变量之间的联系。我们在建立记录体之前先在数据库中定义两个字符串变量:阀门描述、阀门状态。定义完成后我们再进行记录体的定义。第一步:在KingSCADA3.1开发环境树型目录中选择“通用数据源”一“记录体”选型,在右侧内容显示区中单击“新建”按钮,弹出创建记录体对话框,对话框设置如下:

图8-3创建记录体对话框记录体中定义了Access数据库数据表字段与组态王变量之间的对应关系,对应关系如下所示:Access数据库表格字段组态王变量日期\\local\$Date时间\\local\$Time阀门描述\\local\阀门描述阀门状态\\local\阀门状态即:将KingSCADA3.1中\\local\$Date变量值写到Access数据库表格日期字段中;将\\local\$Time变量值写到Access数据库表格时间字段中;将\\local\阀门描述值写到Access数据库表格阀门描述字段中;将\\local\阀门状态值写到Access数据库表格阀门状态字段中。\\local\$Date、\\local\$Time变量为系统变量,表示计算机系统当前的日期和时间。第二步:单击“确认”按钮完成记录体的创建。注:记录体中的字段名称必须与表格模板中的字段名称保持一致,记录体中字段对应的变量数据类型必须和表格模板中相同字段对应的数据类型相同。第三节对数据库的操作1、连接数据库第一步:在KingSCADA3.1开发环境数据词典中定义一个内存整型变量变量名:DevicelD变量类型:内存整型第二步:在图形编辑器中新建一画面,名称为:数据库操作画面,并在画面上添加一按钮,按钮属性设置如下:按钮文本:数据库连接“按钮左键弹起”动画链接设置如下:■动西编辑口回区1动画列表:令DButtonl41/I►左键按下二W勺辭驗娈量工”配方團画面剧函数]Lnl.Col1日左龍按下Truet|voidLeftDownffloatxjloaty)|sQLConnect(\\local\DeuiceID,“D:SN=iii:LnE");+囹保留字对象②厘性图8-4数据连接脚本程序上述命令语言的作用是使组态王与mine数据源建立了连接(即与mydb.mdb数据库建立了连接)。在实际工程中将此命令写入:开发环境树型目录一脚本一系统脚本一应用程序脚本一应用程序启动时,即系统开始运行就连接到数据库上。2、断开数据库的连接在数据库操作画面中添加一按钮,按钮属性设置如下:按钮文本:断开连接“按钮左键弹起”动画链接设置如下:■1动|□回动画列表-辛nEuttonS41/1k左键按下::會i蔭脸变呈二,配方国画面答函数Lul.Cul39ElvoidLehDown(floatx..floaty)左键按下TiUE/*int*/SQLDi£cannect(\\lncAl\DeuiceID);+啄保留于」©£

图8-5断开数据库连接脚本程序在实际工程中将此命令写入:开发环境树型目录一脚本一应用程序脚本一应用程序关闭时,即系统退出后断开与数据库的连接。3、创建数据库表格在数据库操作画面上添加一按钮,按钮属性设置如下:按钮文本:创建数据表“按钮左键弹起”动画链接设置如下:日左键按下TrueButtoii3日左键按下TrueButtoii3L勺卩占隹1/I卜左键抿下渝交量虻应画面鼬函数uId.-1voidLeftDowrjfloatxjlwty)1SQLCreaterable(\\Local\Dei>iceID,"KingTable","Table1,,)|图8-6创建数据表格脚本程序上述命令语言的作用是以表格模板“Tablel”的格式在数据库中建立名为“KingTable”的表格。在生成的KingTable表格中,将生成三个字段,字段名称分别为:日期,时间,原料油液位值,每个字段的变量类型、变量长度及索引类型与表格模板“Tablel”中的定义一致。此命令语言只需执行一次即可,如果表格摸板有改动,需要用户先将数据库中的表格删除才能重新创建。如果只需要建立一次数据表就可以,建议直接在数据库中建立或者在调试时将此函数执行一次建立成功后将脚本程序删除即可。4、插入记录我们要将阀门的状态变化记录到数据库中,因此利用数据改变命令语言编写脚本程序即可。新建一个数据改变命令语言,选择变量:\\local\新建一个数据改变命令语言,选择变量:\\local\液位.Value,编写脚本程序如下:图8-7插入记录脚本程序上述命令语言作用是当变量\\local\液位.Value改变时在数据表KingTable中插入一条新的记录。同样的方式我们可以通过数据改变命令语言将其他阀门变量的状态变化信息记录到数据库中。5、査询记录用户如果需要将数据库中的数据调入到KingSCADA3.1中来显示,需要另外建立一个记录体,此记录体的字段名称要和数据库表格中的字段名称一致,连接的变量类型与数据库中字段的类型一致,操作过程如下:第一步:在KingSCADA3.1开发环境的数据词典中定义四个内存字符串变量:a、变量名:记录日期变量类型:内存字符串b、变量名:记录时间变量类型:内存字符串c、变量名:阀门描述1变量类型:内存字符串c、变量名:阀门状态1变量类型:内存字符串第二步:在数据库操作画面上添加四个文本框,在文本框的“字符串输出”动画中分别连接变量记录日期、记录时间、阀门描述1、阀门状态1,用来显示查询出来的结果。第三步:在KingSCADA3.1开发环境中定义一个记录体,记录体窗口属性设置如图8-8所示:图8-8记录体属性设置对话框第四步:在画面中添加一按钮,按钮属性设置如下:按钮文本:全部查询“按钮左键弹起”动画链接设置如下:■动画编辑动画列表:非=■::篡Button^41/I►左键按下勺禽翳雀粉妾量匕配方国画面鞫函数Lnl.Col1日voidvLeftDom[floatxjloatv]左键按下True▼||$QLSelect(\\local\DeviceID,"KingTable","BindZ",”",""”匚・-■=-^1J-保对厘变<僵-«皿图8-9记录查询脚本程序此命令语言的作用是:以记录体Bind2中定义的格式返回KingTable表格中第一条数据记录。进入运行系统,运行此画面,单击“全部查询”按钮数据库中的数据记录显示在文本框中。第五步:在画面上添加四个按钮,按钮属性设置如下:a、按钮文本:第一条记录“按钮左键弹起”动画链接:SQLFirst(DevicelD);b、按钮文本:下一条记录“按钮左键弹起”动画链接:SQLNext(DeviceID);c、按钮文本:上一条记录

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论