组态王环境下数据库访问技术及其应用.docVIP

  • 12
  • 0
  • 约3.56千字
  • 约 4页
  • 2017-08-23 发布于重庆
  • 举报

组态王环境下数据库访问技术及其应用.doc

组态王环境下数据库访问技术及其应用.doc

组态王环境下数据库访问技术及其应用 摘 要:组态软件具有强大的数据库功能,但是其数据分析功能却十分薄弱。因此在需要对采集数据进行数据分析时,就需要将组态软件数据库中的数据取出送到其他软件如MATLAB中进行分析。本文针对该情况,以“组态王”为例,提供了两种访问数据库的方法,并对两种方法进行了分析,为解决组态软件数据库的访问问题提出了切实可行的方法。 关键词:数据库 组态软件 组态王 SQL 1. 引言   随着工控组态软件功能的不断完善以及可靠性的不断提高,其在工业中得到了非常广泛的应用。但是,尽管组态软件具有强大的实时数据库功能,其数据分析能力却十分薄弱,这一点在一定程度上限制了其在一些领域尤其是在实验室中的应用。本文针对这种情况,以组态王为例,提出利用组态软件数据库访问的技术将数据库中数据取出,送到其他具有数据分析能力的软件(如MATLAB)中去,从而弥补了组态软件在数据分析方面的不足,为其在更大范围内的应用提供了切实可行的方法。 2. 访问组态王数据库的两种方法   在本文中主要介绍和使用了两种方法访问组态王数据库:FileWriteFields函数访问和SQL访问。通过应用这两种方法,将组态王实时数据库中的实时数据直接取出,从而使其他软件可以对数据进行分析。这两种方法是并行的,任何一种都可以完成对组态王数据库的访问。   下面对FileWriteFields函数和SQL分别予以介绍。   2.1 FileWriteFields()函数简介[2]   该函数的功能是往指定文件写入csv(逗号分隔变量)记录。其调用格式为:   FileWriteFields(Filename, FileOffset, StartTag, NumberOfFields);   其中,Filename为指定要写的文件,若文件不存在,则创建它;FileOffset为指定写文件的起始位置(若FileOffset为0,此函数将写到文件末尾;若为1,则写到开头);StartTag指定第一个数据项的变量名称(此变量名必须以一个数字结尾),此参数必须是一个表明变量名的字符串(而非实际的变量本身,比如变量名为MyTag1,就需要给出“MyTag1”或MyTag1.name,而不仅仅是MyTag1);NumberOfFields指定要写的字段数目(此文件的每条记录中以逗号隔开的字段的字段数目)。   2.2 SQL简介   SQL(Structured Query Language)是一个通用的、功能极强的关系数据库语言,由于其功能丰富、语言简单、使用方法灵活,已经成为关系数据库的标准语言[3]。   组态王SQL访问功能是为了实现组态王和其他ODBC数据库之间的数据传输。它包括组态王SQL访问管理器和SQL函数:SQL访问管理器用来建立数据库列和组态王变量之间的联系,通过表格模板在数据库中建立表格,通过记录体建立数据库表格列和组态王之间的联系;SQL函数可以在组态王的任意一种语言命令中调用,这些函数用来创建表格、插入删除记录等。[1]   下面介绍一下几个主要的SQL函数[2]:   (1)SQLConnect()   SQLConnect用于连接组态王和数据库,其格式为:   SQLConnect( ConnectionID, “ConnectString”);   其中:ConnectionID为SQLConnect()产生的连接号,ConnectString为连接语句。连接语句格式如下:“DSN=data source name [; attribute= value [;attribute= value]…]”。   (2)SQLInsert()   SQLInert用于使用记录体中定义的连接在表格中插入一个新的记录,其格式为:   SQLInsert( ConnectionID, TableName, BindList);   其中:ConnectionID为SQLConnect()产生的连接号,TableName为表格名,BindList为记录体。   (3)SQLDisconnect()   SQLDisconnect用于从使用的数据库中断开连接,其格式为:   SQLDisconnect( ConnectionID);   其中:ConnectionID为SQLConnect()产生的连接号,   2.3 两种方法之间的比较   相比较而言,FileWriteFields函数方法相对简单,只要安装了“组态王”即可,但需要占用软件相当的点数;利用SQL方法相对复杂一点,而且需要安装如Access等支持SQL的数据库软件,但不占用组态软件的点数,在具体应用当中可根据需要和实际情况进行选择。 3. 一个例子   下面通过一个例子来介绍这两种方法

文档评论(0)

1亿VIP精品文档

相关文档