Board logo

标题: 在LabVIEW中数据库建立与管理功能实现方法研究 [打印本页]

作者: chenchao8848    时间: 2006-5-22 10:29     标题: 在LabVIEW中数据库建立与管理功能实现方法研究

 在LabVIEW中数据库建立与管理功能实现方法研究


赵 建,陈 强


(西安电子科技大学机电工程学院,陕西西安 710071)


  摘 要:提出在LabVIEW中利用其ActiveX功能,调用微软数据访问控件(Microsoft ADO)来实现数据访问功能的方法,文中介绍了Microsoft ADO编程模型,并给出了在LabVIEW中对数据库进行操作的若干实例。
  关键词:数据库;LabVIEW;SQL;Microsft ADO


Research of Realizing Method of Establishment and Management
Fu n ctions of Database in LabVIEW


ZHAO Jian, CHEN Qiang


(School of Mechanical and Electronics Engineering, Xidian University,
Xi’an 710071, China)


  Abstract: A realizing method of operating database was presented which worked by using the ActiveX function of LabVIEW and the Microsoft ADO. Th e ADO programming model were introduced, and several cases of operating database in LabVIEW were presented.
  Key words: database; LabVIEW; SQL; Microsoft ADO



1实现方法
  在LabVIEW中利用其ActiveX功能,调用Microsoft ADO控件,再利用SQL语言,通过底层ODBC接口函数和ODBC数据库驱动程序访问数据库


  支持所有ADO所支持的数据库引擎,支持所有与ODBC或OLEDB兼容的数据库驱动程序,可以在LabVIEW中支持ODBC的本地或远程数据库,例如Microsoft Access、Microsoft SQL Server以及Oracle等。


2ActiveX技术
  ActiveX是Microsoft提出的一组使用组件对象模型,使软件组件在网络环境中进行交互的技术集,它与具体的编程语言无关。从LabVIEW5.0以后的版本都提供了对AcfiveX的支持。LabVIEW既可以作为ActiveX服务器,也可以作为ActiveX客户机。在本文对数据库访问的实例中,LabVIEW本身担当ActiveX客户,控制其他能实现数据库功能的ActiveX服务器,如Microsoft Access、Oracle等,通过设置和获取属性,执行ActiveX服务器公布的方法,如进行数据查询、添加记录、修改记录、删除记录等数据库操作。


3Microsoft ADO编程模型
  Microsoft ActiveX Data Objects(ADO)是微软最新的数据访问技术,ADO通过编程模型实现对数据库的操作。编程模型是访问和更新数据源所必需的操作顺序,它概括了ADO的全部功能。
  ADO的目标是访问、编辑和更新数据源;利用ADO所提供的类和对象可以完成以下操作:
  (1)连接到数据源;(2)指定访问数据源的命令,同时可带变量参数或优化执行;(3)执行命令;(4)如果这个命令使数据按表中行的形式返回,则将这些行存储在易于检查、操作或更改的缓存中;(5)可使用缓存行的更改内容来更新数据源;(6)提供常规方法检测错误;ADO对象模型如图2所示。


3.1连接
  在程序中,通过“连接(Connection)”访问数据源,连接是交换数据所必需的环境。对象模 型使用Connection对象使连接概念具体化。Connection对象代表打开的、与数据源的连接。使用Connection对象的集合、方法和属性可执行下列等操作:
  (1)在打开连接前使用ConnectionString、ConnectionTimeout和Mode属性对连接进行配置;
  (2)使用DefaultDatabase属性设置连接的默认数据库;
  (3)使用Open方法建立到数据源的物理连接,使用Close方法将连接断开;
  (4)使用Execute方法执行对连接的命令,并使用CommandTimeout属性对执行进行配置。
3.2命令
  通过已建立的连接发出的“命令(Command)”可以用某种方式来操作数据源。命令可以在数据源中添加、删除或更新数据,或者在表中以行的格式检索数据。对象模型用Command对象来体现命令概念,Command对象定义了对数据源执行的指定命令。使用Command对象查询数据库并返回Recordset对象中的记录,以便执行大量操作或处理数据库结构。可以使用Command对象的集合、方法和属性进行下列等操作:
  (1)使用CommandText属性定义命令(如SQL语句)的可执行文本;(2)可使用Execute方法执行命令并在适当的时候返回Recordset对象;(3)使用CommandTimeout属性设置提供者等待命令执行的时间;(4)通过设置ActiveConnection属性使打开的连接与Command对象关联;(5)将Command对象传送给Recordset的Source属性以便获取数据。
3.3记录集
  命令是在数据库的表中按信息行返回数据的查询,并将这些行存储在本地;ADO对象模型将该存储体现为“记录集(Recordset)”对象。记录集是在行中检查和修改数据最主要的方法。通过记录集对象可执行下列操作:
  (1)指定可以检查的行;(2)移动行;(3)指定移动行的顺序;(4)添加、更改或删除行;(5)通过更改行更新数据源;(6)管理Recordset的总体状态。
  使用ADO时,通过记录集对象可对几乎所有数据进行操作。


4应用举例
  在LabVIEW应用程序中实现与数据库的连接是建立在ODBC数据源基础之上的,所以需要在Windows操作系统中的ODBC数据源中创建一个数据源名(DSN),使之与待访问数据库相关联。
  创建与数据库的连接及建立记录集的框图程序如图3所示。图中在调用ADODB.Connection的Open方法节点时,输入的“ConnectionString”参数即指定连接的数据源名,格式为“DSN=数据源名”,可以通过更改数据库源名,而实现与不同的数据库连接。后面ADODB.Recordset的Open方法节点在执行有效SQL语句后返回记录集,以便对数据库操作。
  在返回的记录集中添加一条记录的框图程序如图4所示。调用ADODB.Recordset的AddNew方法节点,向记录集中添加一条记录,并设置首字段的值,再调用Update方法节点设置其余字段的值,完成添加记录后,系统将会自动对数据库进行更新。
  在返回的记录集中删除一条记录的框图程序如图5所示。这里将游标移到第一条记录,然后调用Delete方法节点删除这条记录。如果需要删除其他记录,只需将游标移到该记录上,再调用Delete方法节点即可。
  修改数据库中一条记录的框图程序如图6所示。首先调用ADODB.Recordset的Find方法节点,根据输入的条件获取待修改的记录,再调用Update方法节点重置待修改字段的值,以完成对记录的修改。
  实现数据库查询的框图程序如图7所示。首先调用ADODB.Connection的Execute方法节点,执行输入的CommandText参数(即SQL查询语句),然后对返 回的记录集调用ADODB.Recordset的GetString方法节点,获取返回记录集中各条记录各个字段的值,并通过输入参数指定的列分隔符和行分隔符将这些值组成一个长字符串,根据需要可以将这个长字符串按行和列分隔符分离开,再按记录条的形式显示在前面板的表格中。



  在完成对数据库的各种操作后,需要关闭记录集及断开数据库连接,其框图程序如图8所示。调用ADODB.Recordset和ADODB.Connection各自的Close方法节点来实现。
  这些操作都是对数据库最基本的操作,只要将其综合利用和组合,就可以实现复杂的数据库操作。并且,Microsoft ADO控件具有远程数据库访问的功能,同样可以在LabVIEW中实现对远程数据库的访问。


作者: yansijie    时间: 2007-1-12 11:42

好啊,谢谢,正需要呢






欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0