摘 要:介绍用LabVIEW SQLToolkit进行数据库访问的方法。利用该工具包,用户可以创建一个使用数据库来管理复杂任务、存储测试数据并且能够总结测试结果的自动化测试系统。具体内容包括用LabVIEW将数据文件导入数据库和将数据库 中的数据文件导出到LabVIEW程序中。 关键词:自动测试系统;虚拟仪器;数据库?? 在虚拟仪器开发中必须解决专业软件和数据库之间的数据传输和调用问题,而LabVIEW 现有的版本中没有提供与通用数据库直接接口的方法。这一问题可以采用以下几种方法解决 。 - 购买NI公司的LabVIEW Add?睴ns中的数据库接口工具包LabVIEW SQLToolkit进行数据库访问。它是一个能快速连接本地和远程数据库,不使用SQL语言就能完成一系列数据库操作的工具包,它支持当前流行数据库,包括Microsoft Access,MicrosoftSQL Sever以及Oracle等。它的优点是易于理解,操作简单,用户可以不学习SQL语法。本论文采用此工具包对数据库进行访问。
- 利用其他语言如Visual C++编写DLL程序访问数据库,利用LabVIEW 所带的DLL接口访问该程序,可以实现间接的访问数据库。
- 利用中间文件存取数据,先将数据存入文件之中,在一定的时刻或者是需要的时 候再将数据导入到数据库之中。
- 利用LabVIEW的ActiveX功能,调用Microsoft ADO控件,利用SQL语言实现数据库访问。??
1、LabVIEW SQLToolkit简介 LabVIEW SQLToolkit(其又被称作为LabVIEW Database Connectivity Toolset)是用于数据 库访问的附加工具包,工具包集成了一系列的高级功能模块,这些模块封装了大多数的数据库操作和一些高级的数据库访问功能。其主要的功能如下: - 支持Microsoft ActiveX Data Object(ADO)所支持的所有的数据库引擎;
- 支持所有与ODBC或OLE DB兼容的数据库驱动程序;
- 具有高度的可移植性,在任何情况下,用户通过改变DB Tools Open Connection VI的输 入参数Connection String就可以更换数据库;
- 可以将数据库中Column Values的数据类型转换为标准LabVIEW Database Connectivity T oolset的数据类型,这进一步增强了它的可移植性;
- 与SQL兼容;
- 不使用SQL语句就可以实现数据库记录的查询、添加、修改以及删除等操作;
- 用户可以完全不需要学习SQL语法。
用户可以使用LabVIEW SQLToolkit在LabVIEW中支持ODBC的本地或远程数据库,例如Microso ft Access,Microsoft SQL Sever,Sybase SQL Server以及Oracle等。在LabVIEW中使用La bVIEW SQLToolkit访问数据库时,其结构层次如图1所示。?お? 2、ODBC简介 ODBC是微软公司开放服务体系结构(WOSA,Windows Open Services Architecture)中有关数 据库的一个组成部分,它建立一组规范,并提供一组对数据库 访问的API(应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可 以直接将SQL语句送给ODBC。 一个基于ODBC的应用程序对数据库的操作不依赖于任何DBMS(数据库管理系统),所有的数据库操作由对应的DBMS的ODBC驱动程序完成。不论是FoxPro、Access还是Oracle数据库,均可 用ODBC API进行访问。由此可见,ODBC的最大优点是支持对异构数据库的访问,能以统一方 式处理所有数据库。?? 3、在LabVIEW中访问数据库的开发实例 3.1LabVIEW SQLToolkit的配置 在使用LabVIEW SQLToolkit工具包之前,首先需要在Windows操作系统中的ODBC数据源中创 建一个DSN(data source name,数据名)。LabVIEW SQLToolkit与数据库之间的连接就是建 立在DSN基础上的。 DSN的创建步骤如下: 第一步:在Windows操作系统的控制面板中选择“数据源(ODBC)”,弹出ODBC数据源管理器 。 第二步:单击“系统DSN”选项卡中的“添加…”。 第三步:在随后出现的“创建新数据源”对话框驱动程序列表中选“Microsoft Access Dri ver(*.mdb)”,并单击“完成”按钮。 第四步:在随后出现的对话框中的“数据源名”一栏中创建DSN的名称,例如本系统使用的n iDB;并利用“选择”按钮选择需要利用LabVIEW SQLToolkit访问的数据库,如niDB.mdb, 然后单击“确定”按钮。 这样就完成了DSN的创建。从此以后,LabVIEW SQLToolkit就可以利用这个DSN访问与之相关 联的数据库了。 3.2创建数据库表和添加数据 建表和添加数据操作是数据库最基本的功能之一。本例首先使用DB Tools Open Connection 打开数据库连接,使用DB Tools List Tables和DB Tools Create TableTools判断指定的数据库表是否存在,并据此建立数据库表;然后通过带参数技术的DB Tools Create Paramete rized Quely向数据库添加数据,在其中还利用DB Tools Set Parameter Value对其进行参数的设定,使用这种技术的插入操作其效率高于使用DB Tools Insert Data;最后使用DB T ools Execute Query执行指定查询,并使用DB Tools Free Object和DB Tools Close Conne ction释放资源及断开连接。具体的框图程序如图2所示。??
3.3进行数据查询
在查询操作中,其关键是利用DB Tools Fetch Element Data获取纪录,以及利用DB Tools Get Properties判断索引是否有效。其框图程序如图3所示。 4、结束语 LabVIEW是开发虚拟仪器应用软件的高效率工具,利用专门的数据库接口工具包LabVIEW SQL Toolkit可以方便的实现LabVIEW应用程序对数据库的存取。开发人员可以根据具体应用的不同要求实现存储和调用要测试的对象的历史数据和初始状态,建立被测试对象的数据查询系统,动态的修改数据等功能。本系统的设计和实现表明,通过LabVIEW与数据库Microsoft A ccess 2000之间进行动态数据交换,使得由LabVIEW组成的新一代软件测试系统具有了许多强大的功能,在组建简单的或是复杂的测试系统中有广泛的应用价值。?? 参考文献 〔1〕NI.Database Connectivity Toolset User Manual〔Z〕.2001. 〔2〕汪锐,汪仁煌.在LabVIEW中使用动态连接库与通用数据库接口〔J〕.电讯技 术,2000,(3):63. 〔3〕李鹰,黄海荣,田作华.一种LabVIEW和数据库的接口设 计方法〔J〕.计算机 工程,2000,(7):98-99.?? 〔4〕黎洪生,李超,刘俊刚.LabVIEW中利用ADO访问数据库的方法〔J〕.计算机系 统应用,2001,(11):71-73.?? 〔5〕杨乐平,李海涛,赵勇,等.LabVIEW高级程序设计〔M〕.北京:清华大学出 版社,2003. 〔6〕马安鹏.Visual C++6程序设计导学〔M〕.北京:清华大学出版社, 2002.
|