概述
尽管紫金桥组态软件自身拥有一个强大的实时数据库,但是鉴于关系数据库在某些场合更加适用,所以组态软件很多时候也需要与各种关系数据库相连接,对关系数据库进行操作。Accesss、SQL Server等数据库也许为我们所熟悉,但是一般我们较少接触Oracle数据库。Oracle数据库是第一个开放式商品化的关系型数据库,主要满足银行、金融、保险等企事业单位对大型数据库的需求。下面就笔者的经验,对紫金桥组态软件与oracle数据库的连接做简要论述。
软件环境
一般而言,一个关系型数据库系统是一个或者多个服务的集合,与具体的管理工具是不相干的。我们以oracle 10g home版本为例,假设oracle数据库系统安装在某一台服务器上(假定IP为192.168.128.129),那么在需要访问该数据库的客户机上需要安装oracle 10g home版的客户端。安装完客户端后,机器就带有了一些管理工具,这些工具将方便我们的使用。同样,该客户机还需要安装紫金桥组态软件。
配置服务名
为了便于使用的方便,一般我们把某一个oracle数据库系统上的某一个特定数据库或者全局数据库做一个映射,称为“服务名”,然后使用服务名即可访问数据库。使用Net Manager管理工具:
选择“编辑”->“创建…”后按照向导来创建一个服务:
“网络服务名”填写的即是需要全局引用的服务名。
此处“主机名”可以填写Oracle数据库所在的服务器IP地址,或者网络名。
上面假定了Oracle数据库服务器上的全局数据库名称为“GlobalDBName”
在完成之前,可以根据需要测试数据库的连接。点击“完成”,新建的服务名即完成:
紫金桥组态软件连接oracle数据库
众所周知,在windows下,微软有一个开放数据库互连接口即ODBC,和一个数据库访问的的应用程序接口即OLE/DB。
ODBC方式
1. 建立数据源:“控制面板”->“性能和维护”->“管理工具”中找到“数据源 (ODBC)”或运行“odbcad32.exe”
双击打开,在“系统DSN”选项卡点击“添加”
选择相关驱动程序,如“Microsoft ODBC for Oracle”
然后填写下面的设置:
此处“服务器”填写前面“配置服务名”板块中所配置的服务名。确定后,名为Ora1的数据源就建立完毕:
2. 紫金桥组态软件连接数据源
在任何脚本编辑区,使用用函数SQLConnect(Long ConnectID, String SourceDesc) 来连接数据源,其中ConnectID为连接标识,连接成功为一个非负的整数,SourceDesc为数据源描述,可以通过选择数据源自动生成:
选择之前建立的数据源:
输入密码:
生成连接字符串:
连接成功后,即可使用紫金桥组态软件的SQL脚本函数进行数据库的相关操作了。
需要注意的是,数据源使用完毕不再使用时,或者退出程序前,需要使用SQLDisconnect(Long ConnectID)函数释放数据源。
OLE/DB方式
该方式主要是在报表关系数据源点中使用。
1. 建立报表关系数据源点
在紫金桥组态软件开发界面的“数据库”选项卡->“点组态”中,创建一个“报表关系数据源”点,如下
联结字符串选择“联结Oracle数据库”,然后弹出对话框:
此处“服务名”填写前面“配置服务名”板块中所配置的服务名。这样便自动生成了联结字符串:
确定后,一个名为“Ora1”的报表关系源点就建好了。
2. 使用报表进行关联
在紫金桥组态软件开发界面的窗口中,创建一个自由报表对象,双击进入其属性设置,点击“关系数据库联结设置”:
看到如下设置画面:
在“关系数据源点”处填写先前建立的关系数据源点名称“Ora1”,即把数据库和自由报表关联到了一起。
若自由报表名称为FreeReport1,则在窗口中可以使用“#FreeReport1.”+自由报表SQL函数的方式进行数据库相关操作,例如:#FreeReport1.SqlSelectCmd("select * from table1");
!--EndFragment-->