当前位置:文档之家› 组态王与ACCESS数据库的数据交换的例子

组态王与ACCESS数据库的数据交换的例子

组态王与ACCESS数据库的数据交换
——以中山创污水处理为例
一、创建表格模板和记录体。

在组态王工程浏览器中的SQL访问管理器点击表格模板。

在右侧目录内容中双击“新建”创建一个名称为“1”且字段为“工号”“日期”“时间”“酸”“碱”“混凝剂”“还原剂”“氯化钙”“PAM正”“PAM负”的表格。

注意:当编辑字段名称时,应与新建组态王变量一样(最好不要用字符),不含非法字符,如:“+”“-”“=”“#”等。

此表格格式决定了ACCESS数据库的表格格式。

同样在SQL管理器中点击记录体,在右侧目录内容中双击“新建”,创建一个名称为“1”的记录体。

其字段名称与表格模板中的字段相对应。

组态王变量是连接的组态王内部变量。

编辑字段名称的规则与编辑表格模板一样。

二、建立MS ACCESS数据库。

1.建一个空的ACCESS数据库,定名为20,保存在D:\29所污水处理工程。

2.定义数据源
双击控制面板下的“ODBC数据源(32位)”选项,弹出“ODBC数据源管理器”
对话框。

选择“用户DSN”属性页,并单击“添加”按钮。

在弹出的“创建新数据源”对话框中,选择“Mirosoft Access Driver”单击“完成”按钮。

弹出“ODBC Microsoft Access安装”对话框,定义数据源名为“20”
单击“选择”按钮,从中选择路径D:\29所污水处理工程\20.MDB
单击“确定”按钮,完成对数据源的配置。

三、组态王开发界面的组态
在组态王开发系统中创建如下画面:
其中表格为KV ADODBGrid CLASS控件。

四、对数据库的操作。

点保存弹出对话框。

在“确定”按钮的动画连接向导的“弹起时”输入命令语言
SQLConnect( \\本站点\ID, "dsn=20;DATABASE=20;uid=;pwd=");
//连接名称为“20”,数据源名称为“20”的数据库。

SQLCreateTable( \\本站点\ID, "10", "1" );
//在数据库“20”内创建名称为“10”的表格,表格模板名称为“1”表格模板在组态王中已编辑。

SQLInsert( \\本站点\ID, "10", "1" );
//在名称为“10”的表格内插入名称为“1”的记录体。

记录体在组态王中已编辑。

ClosePicture("手动确定");
//关闭“手动确定”画面。

数据库中的被记录变量必须要先被当前组态画面显示后才能在数据库中记录下来。

(本工程中要记录的变量已经在KV ADODBGrid CLASS控件上方显示过了,即褐色的部分,显示后再点击“保存”按钮,进入保存对话框,点击“确定”按钮,数据才能进入数据库。

五:进入组态王运行状态,点击保存弹出对话框,点击“确定”按钮;将会自动在Microsoft Access 中生成名字为“10”的数据库表格;
六:进入Microsoft Access中,打开D:\29所污水处理工程\20.MDB,就会看到自动生成的名字为“10”的数据库表格
七、创建KV ADODBGrid CLASS控件
1.在画面中插入控件:组态王画面菜单中编辑\插入通用控件,或在工具箱中单击“插入通用控件”按钮,在弹出的对话框中选择 KVDBGrid Class,单击确定。

2.按下鼠标左键,并拖动,在画面上绘制出表格区域。

3.双击控件。

弹出KVADODBGrid CLASS控件动画连接属性。

在控件名那栏填上“手动历史数据库”。

注意:控件名最好为汉字。

4.设置控件属性:选择控件右键菜单中“控件属性”。

弹出控件固有属性页,可分别设置如下属性:
(1)、数据源:
单击“浏览”按钮可选择已建的ODBC数据源“20”。

选择数据源后“表名称”组合框中就自动填充了可选的表名称,可弹出下拉列表选择要显示的数据所在的表名称“10”。

选择表名称后,“有效字段”中自动填充表中的所有字段“工号”“日期”
“时间”“酸”“碱”“混凝剂”“还原剂”“氯化钙”“PAM正”“PAM负”,
可通过“添加”、“删除”,“上移”,“下移”按钮来选择要显示的字段和
显示顺序。

单击显示的字段,可在右侧设置字段显示的标题、格式、对齐等属性。

(2)、表格属性:
可设置表格的一般属性。

说明:如固定行数大于1,则第一行显示选择字段的标题,其它固定行不
自动填充,要由使用者在设计状态编辑其显示内容。

(3)、颜色:
可设置表格颜色,背景颜色,文本颜色等信息。

(4)、字体:
可设置固定行字体,普通行字体,打印页眉,页脚,标题字体。

(5)、打印设置:
可设置打印标题,页眉,页脚及其位置。

页码格式和位置。

分页位置等。

5.KVADODBGrid CLASS控件方法。

(1)显示数据库表格查询数据
在“显示”按钮的动画连接向导的“弹起时”输入命令语言
手动历史数据库.FetchData();
手动历史数据库.FetchEnd();
(2)表格中字段“工号”“日期”“时间”“酸”“碱”“混凝剂”“还原剂”“氯化钙”“PAM正”“PAM负”的累加值。

在“累积”按钮的动画连接向导的“弹起时”输入命令语言LONG a;
a=3;
\\本站点\酸累积值=手动历史数据库.SumInField(a);
LONG b;
b=4;
\\本站点\碱累积值=手动历史数据库.SumInField(b);
LONG c;
c=5;
\\本站点\混凝剂累积值=手动历史数据库.SumInField(c);
LONG d;
d=6;
\\本站点\还原剂累积值=手动历史数据库.SumInField(d);
LONG e;
e=7;
\\本站点\CACL2累积值=手动历史数据库.SumInField(e);
LONG f;
f=8;
\\本站点\PAM正累积值=手动历史数据库.SumInField(f);
LONG g;
g=9;
\\本站点\PAM负累积值=手动历史数据库.SumInField(g); (3)查询表中数据。

在“查询”按钮的动画连接向导的“弹起时”输入命令语言手动历史数据库.QueryDialog();注:6.5版本无此命令. (4)刷新表中数据
在“刷新”按钮的动画连接向导的“弹起时”输入命令语言手动历史数据库.RefreshData();
(5)打印表格
在“刷新”按钮的动画连接向导的“弹起时”输入命令语言手动历史数据库.Print();。

相关主题