设为首页 加入收藏 期刊导航 网站地图
  • 首页
  • 期刊
    • 数学与物理
    • 地球与环境
    • 信息通讯
    • 经济与管理
    • 生命科学
    • 工程技术
    • 医药卫生
    • 人文社科
    • 化学与材料
  • 会议
  • 合作
  • 新闻
  • 我们
  • 招聘
  • 千人智库
  • 我要投搞
  • 办刊

期刊菜单

  • ●领域
  • ●编委
  • ●投稿须知
  • ●最新文章
  • ●检索
  • ●投稿

文章导航

  • ●Abstract
  • ●Full-Text PDF
  • ●Full-Text HTML
  • ●Full-Text ePUB
  • ●Linked References
  • ●How to Cite this Article
Artificial Intelligence and Robotics Research 人工智能与机器人研究, 2013, 2, 75-78
doi:10.12677/airr.2013.22014 Published Online May 2013 (http://www.hanspub.org/journal/airr.html)
Database Access Technology Based on LabSQL
Yugang Wang, Xudong Li, Xuhua Dong, Xingzhen Fu, Ye Chen
Department of Aviation Armament Fire Control System, Naval Aeronautical Engineering Academy of Qingdao Branch, Qingdao
Email: flyingmanwang@163.com
Received: Jan. 16th, 2013; revised: Feb. 14th, 2013; accepted: Feb. 23rd, 2013
Copyright © 2013 Yugang Wang et al. This is an open access article distributed under the Creative Commons Attribution License, which permits
unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
Abstract: In this article, some kinds of methods that LabVIEW used to access database are summarized and compared
with, and LabSQL database access kit has been introduced emphatically. It explains the method of data exchange using
LabSQL in LabVIEW. It has been applied to the certain talent management system. It can also carry out complex data-
base operations if integrated.
Keywords: LabSQL; Database; LabVIEW
基于 LabSQL 的数据库访问技术
王玉刚,李旭东,董绪华,付兴振,陈 晔
海军航空工程学院青岛校区航空军械火控系,青岛
Email: flyingmanwang@163.com
收稿日期:2013 年1月16 日;修回日期:2013 年2月14 日;录用日期:2013 年2月23 日
摘 要:本文总结并比较了用 LabVIEW 访问数据库的几种方法,重点介绍了 LabSQL 数据库访问工具包,说明
了在 LabVIEW 环境下,利用 LabSQL 实现与数据库交互的方法,实现某型人才数据管理任务。将其综合利用,
可实现复杂的数据库操作。
关键词:LabSQL;数据库;LabVIEW
1. 引言
1.1. 虚拟仪器开发环境 LabVIEW
LabVIEW 是美国 NI 公司开发的具有革命性的图
形化虚拟仪器开发环境,它内置信号采集、测量分析
与数据显示功能,集开发、调试和运行于一体。
LabVIEW 实际上不是一个词,而是一个缩写,含义是:
Laboratory Virtual Instrument Engineering Workbench,
可以翻译成“在实验室使用的工程师的虚拟仪器平
台”。LabVIEW 的交互式测量、自动代码生成以及与
成千上万个设备简易连接的特性,使它能够轻而易举
地完成数据采集。其最大特点就是把仪器功能由生产
厂家定义的方式转变为由用户自己定义,产生的程序
称为 VI(Virtual Instruments,即虚拟仪器)。
LabVIEW 带有超过450 个内置函数,用于从采集
到的数据中挖掘有用的信息,分析测量数据和处理信
号。LabVIEW 还提供一系列工具,用于数据显示、用
户界面设计、Web 信息发布、报告生成、数据管理以
及软件连接,可快速开发数据采集、测试测量、控制
分析等应用系统。
1.2. LabVIEW访问数据库的方法
虚拟仪器技术是测控技术和计算机技术相结合
的产物,测试任务与数据库的交互也是以仪器的计算
Copyright © 2013 Hanspub 75
基于 LabSQL 的数据库访问技术
机化为前提的。对数据进行存储、分析是测量与测试
任务的一个关键环节,其中涉及到实时测量数据和历
史存储存储数据的读写操作。LabVIEW 中常用的系统
数据管理方式有两种:利用文件系统管理数据和利用
数据库系统管理数据。前者可以满足系统实时性的要
求,但文件系统中写入的数据类型一般需根据工程需
要来定义,大量的编程工作都耗费在数据的组织、拆
分上,使整个编程的工作量大为增加,而且文件数量
多也容易引起管理的混乱。现有的测量任务一般都采
用后者存储数据以方便管理和使用。
数据库强大的数据存储、查询、调用等功能给工
业自动化和测试与测量系统以强大的技术支持,用户
可以创建一个使用数据库来管理复杂测试任务、存储
测试数据并且能够总结测试结果的自动测试系统。
LabVIEW 软件常用的访问数据库的方法有以下
几种:
1) 利用 NI 公司的附件工具包中的数据库接口工
具包 LabVIEW SQL Toolkit进行数据库访问。该工具
包集成了一系列的高级功能模块,这些模块封装了大
多数的数据库操作和一些高级的数据库访问功能。
2) 利用 LabVIEWDE ActiveX功能,调用
Microsoft ADO对象,利用 SQL 语言实现数据库访问,
ActiveX 是微软倡导的网络化多媒体技术,在 OLE/
COM/Internet 开发中得到了广泛的使用。
3) 通过第三方开发的免费工具包 LabSQL访问,
LabSQL 利用 Mi cros oft AD O及SQL 语言来完成数据
库访问,将复杂的底层 ADO 及SQL 操作封装成一系
列的 LabSQL VIs,本文利用LabVIEW 用户开发的
LabSQL 工具包来实现数据库的访问。
2. 基于 ADO 和SQL 的LabSQL
LabSQL 是LabVIEW 用户开发的免费、多数据
库、跨平台的数据库访问工具包。LabSQL利用 Micro-
soft ADO 和SQL 语言来完成数据库访问,将复杂的
底层 ADO 及SQL 操作封装成一系列的 LabSQL VI,
其本质就是一系列封装了 ADO属性和方法的 VI 集。
LabSQL 支持 Windows 操作系统中任何基于 ODBC的
数据库,包括 Access、SQL Server、Oracle、Sybase 等。
2.1. ADO编程模型
ADO(ActiveX Data Object)是Microsoft 为一致数
据访问技术设计的应用层接口,它通过编辑模型实现
对数据库的操作,其目标是访问、编辑和更新数据源,
编程模型体现了为完成该目标所必需的系列动作的
顺序[1]。
应用 ADO 进行数据访问的一般过程是:连接数
据源–指定命令–执行命令。用 Connection 对象建立
与数据源的连接,然后用一个 Command 对象给出对
数据库的操作命令,比如查询或者更新数据等,而
Recordset 用于对结果数据进行维护或浏览等操作。同
传统的数据对象层次不同,ADO 可以独立创建,用户
可以只创建一个 Connection 对象,但可以有多个独立
的Recordset 对象来使用它,这些特点简化了程序编
制,增加了程序的可移植性[2]。
2.2. SQL简介
SQL(Structured Query Language)称为结构化查询
语言,其主要功能是各种数据库建立联系并进行沟
通,SQL 结果简洁,功能丰富,简单易学,可以用来
执行各种各样的数据库操作。目前,绝大多数关系数
据库管理系统都采用了 SQL标准。SQL包含四个部
分:1) 数据查询语言 SELECT;2) 数据操纵语言
INSERT、UPDATE、DELETE;3) 数据定义语言
CREATE、ALTER、DROP;4) 数据控制语言 GRANT,
REVOKE。
同时 SQL 具有设计巧妙,完成核心功能只需 9
个动词,语言简洁,综合统一的特点[3];SQL 面向集
合的操作方式使查找结果可以是元组的集合,而且一
次插入、删除、更新的对象也可以是元组的集合(一次
一个集合)。SQL 既是自含式语言,又是嵌入式语言。
SQL 在两种方式下的语法结构基本上是一致的,为用
户提供了极大的灵活性与方便性。
2.3. LabSQL的优点
LabSQL 的优点是易于理解,操作简单,不熟悉
SQL 语言的用户也可以很容易地使用。只需要简单的
编程,就能在 LabVIEW中实现数据库访问,执行各
种SQL 查询以及对记录进行各种操作。利用 LabSQL
可以访问到任何类型的数据库,对记录进行各种操
作。另外其最大优点是源代码开放,并且是完全免费
的。
Copyright © 2013 Hanspub
76
基于 LabSQL 的数据库访问技术
Copyright © 2013 Hanspub 77
2.4. LabSQL VIs分类
在LabVIEW 安装目录的user.lib 文件夹中安装
LabSQL 后,运行 LabVIEW,其功能模板就会自动加
载LabSQL。
LabS QL VIs按功能可分为 4类:
1) Command VIs,用于完成基本的 ADO 操作,
例如对数据库中的某一个参数进行读或写;
2) Connection VIs,用于管理 LabVIEW 与数据库
之间的连接;
3) Recordset VIs,用于对数据库中的记录进行各
种操作,例如:创建或删除一条记录;
4) Top Level VIs,属于顶层的 LabSQL 应用,是
对前三类 LabSQL VIs某些功能的封装。
3. LabSQL访问数据库
下面以某型人才数据库 mydb.mdb 为对象,以查
询数据记录的典型操作为例来介绍利用 LabSQL 实现
数据库访问的方法。数据库中包含该单位人员的基本
信息、论文统计、社会关系、家庭住址等表。其中基
本信息表如表 1所示。
3.1. LabSQL的配置
LabSQL 与数据库之间是通过 ODBC连接,用户
需要在 ODBC 中指定数据源名称和驱动程序。因此在
使用 LabSQL 之前,首先需要在Windows 操作系统中
的ODBC数据源中创建一个 DSN(data source name,
数据源名)。LabSQL 与数据库之间的连接就是建立在
DSN 基础之上的。其连接流程如图 1所示。
3.2. 利用 LabSQL 查询记录
利用 LabSQL 在数据库操作中可实现应用程序与
数据库之间的数据交互传递。下面以查询数据库中职
称为“副教授”为例,介绍一下如何利用 LabSQL 实
现记录的查询[4],框图程序如图 2所示。
首先利用 ADO Connection Create.vi创建一个
Connection 对象,然后利用 ADO Connection Open.vi
建立与数据库的连接。通过 C omm and Text指出 SQL
Table 1. Basic information table
表1. 基本信息表
人员编号 姓名性别职称 出生日期 政治面貌民族
201001 张明 √ 教授 1962-2-1 党员 汉
201002 王丽 副教授 1972-10-2 党员 满
201003 赵丽华 讲师 1978-5-15 无党派
人士 汉
201004 李思明 √ 副教授 1968-8-4 党员 汉
201005 章远程 √ 讲师 1980-12-25 九三学社 壮
201006 魏明伦 √ 讲师 1976-9-8 党员 汉
201007 王明涛 √ 助教 1984-2-9 党员 汉
201008 杨明万 教授 1959-6-7 党员 汉
201009 程立国 √ 讲师 1981-6-8 党员 汉
201010 韩南 助教 1983-11-25 党员 汉
LabVIEW
LabSQL VIs
DSN(数据源名 e)
ODBC Driver
数据库
Figure 1. Diagram of LabSQL connected with database
图1. LabSQL与数据库连接框图
Figure 2. Diagram program of querying record
图2. 查询记录的框图程序
基于 LabSQL 的数据库访问技术
Figure 3. Data recording after querying
图3. 查询后的数据记录
查询命令“SELECT * FROM 基本信息 Where 基本信
息。职称 = ‘副教授’;”。调用 ADO SQL Execute.vi
在mydb.mdb 数据库中基本信息表格中查出相应的记
录。最后通过 ADO Connection Close.vi关闭与数据库
之间的连接。
查询的结果如图 3所示。
其中修改记录、添加记录、删除记录等操作与查
询数据库的实现方法类似,如果掌握了这四个基本的
操作方法和步骤,并且将其综合利用,就可以实现复
杂的数据库操作。
4. 结束语
LabSQL 通过一致的数据访问技术对通用数据库
进行访问,实现简单、使用灵活,是一种很好的数据
库访问接口。同传统的数据库访问技术相比,它不仅
大大简化了编程,而且使数据库的选取变得非常灵
活。实例表明,使用 LabSQL工具包,LabVIEW 可以
方便的访问通用数据库,并可以实现对数据库的实时
操作。开发人员可以根据具体应用的不同要求实现更
复杂的功能。
参考文献 (References)
[1] 李建文, 刘笃喜, 朱名诠. 基于 ADO 技术的 LabVIEW 访问
数据库的方法[J]. 自动化仪表, 2003, 24(9): 15-17.
[2] 徐洪安, 费仁元, 王民. 用ADO 构建 LabVIEW 中的数据库
访问接口[J]. 北京工业大学学报, 2003, 29(2): 138-140.
[3] 周绪. SQL Server 2000中文版入门与提高[M]. 北京: 清华大
学出版社, 2001: 80-109.
[4] 杨乐平, 李海涛, 赵勇等. LabVIEW高级程序设计[M]. 北京:
清华大学出版社, 2003: 470-485.
Copyright © 2013 Hanspub
78

版权所有:汉斯出版社 (Hans Publishers) Copyright © 2012 Hans Publishers Inc. All rights reserved.