0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何轻松搞定数据库应用

zwjV_gh_ 来源:陈翠 2019-07-07 08:00 次阅读

LabVIEW 中利用LabSQL 访问数据库

虚拟仪器VI(virtual instruments)是National Instruments公司在其产品LabVIEW中首先提出的创新概念。随着现代测试技术与仪器技术的发展,目前虚拟仪器概念已经发展成为一种创新的仪器设计思想,成为设计复杂测试系统和测试仪器的主要方法和手段。同时LabVIEW也以成为测试与测量领域的工业标准应用编程软件。

但由于LabVIEW本身并不具备数据库访问功能,因此以LabVIEW编制的虚拟仪器系统需要其它辅助的方法来进行数据库访问。

1 LabVIEW 中与数据库接口的方法 在基于数据库的虚拟仪器测量测试系统中,很重要的一部分工作是对实时采集地的数据进行显示、查询、统计、生成报表分析等。这其中涉及的最主要的任务就是对数据的读取和写入,即与数据库系统进行交互。据笔者所知,在LabVIEW 编程环境下,通常通过以下几种方法来完成与数据库的接口。

利用NI 公司的附加工具包LabVIEW SQL Toolkit 进行数据库访问。但是这种工具包比较昂贵,对于很多LabVIEW 用户来讲,这个价格是不可能承受的。

利用其他语言如Visual C++编写DULL 程序访问数据库,再利用LabVIEW 所带的DULL 接口访问该程序,这样可以实现间接访问数据库。但这样工作量太大。

利用LabVIEW 的ActiveX 功能,调用Microsoft ADO 控件,利用SQL 语言实现数据库访问。利用这种方式进行数据库访问需要用户对Microsoft ADO 控件以及SQL语言有较深的了解,并且需要从底层进行复杂的编程才能实现。这对于大多数用户来讲也是不现实的。

这几种方法虽然都可以完成对数据库的访问,但各有缺点不能满足系统对数据库实时访问的要求。本文提出通过LabVIEW 用户开发的免费LabVIEW 数据库访问的工具包LabSQL来解决以上存在的问题。

2 数据库访问的工具包LabSQL 简介 LabSQL 是一个免费的、多数据库、跨平台的LabVIEW 数据库访问工具包。目前的版本是LabSQL Release 1.1,LabSQL 支持Windows 操作系统中任何基于OBDC 的数据库,包括Acess,SQL Server,Orcale,Pervasive,Sybase 等。LabSQL 是利用Microsoft ADO 以及SQL 语言来完成数据库访问,将复杂的底层ADO 及SQL 操作封装成一系列的LabSQL VIs。利用LabSQL 几乎可以访问任何类型地数据库,执行各种查询,对记录进行各种操作。它的优点是易于理解,操作简单,不熟悉SQL 语言的用户也可以很容易地使用。只需进行简单地编程,就可在LabVIEW 中实现数据库访问。它还有一个最大的优点是源代码开放,并且是全面免费的。(注:LabSQL 的下载网址http://jeffreytravis.com)

Microsoft ADO 简介:Microsoft AciveX Data Objects(ADO)是微软最新的数据库访问技术,可以用于编写通过OLE DB 提供者对在数据库服务器中的数据进行访问和操作的应用程序。OLE DB 是一个底层的数据访问接口,用它可以访问各种数据源,包括传统的关系型数据库以及电子邮件系统和自定义的商业对象。ADO 为用户提供了一个OLE DB 的Automation 封装接口。如同不同的数据库系统需要它们自己的ODBC 驱动程序一样,不同的数据源要求它们自己的OLE DB 提供者(OLE DBprovider)。

SQL 作为关系型数据库中的一种通用的结构化查询语言,它的主要功能就是同各种数据库建立联系,进行沟通。SQL 语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。目前绝大多数的关系型数据库管理系统,如Orcale,Sybase,Microsoft SQL Server, Access 等都采用了SQL 语言表标准。

3 LabVIEW 中对LabSQL 的使用3.1 LabVIEW 中加入LabSQL 在LabVIEW 安装目录中的user.lib 文件夹中新建一个名为LabSQL 的文件夹,并将下载得到的LabSQL.zip 压缩文件中所有文件解压到这个文件夹中。解压缩后的文件包括LabSQLADO functions 和Examples 两个文件夹,以及ADO210.CHM 和README_FIRST.txt 两个文件。再次运行时,LabVIEW 的功能模块就会自动加载LabSQL。3.2 LabSQL 的配置

LabSQL 与数据库之间是通过ODBC 连接,用户需要在ODBC 中指定数据源名称和驱动程序。因此在使用LabSQL之前,首先需要在Windows 操作系统中的ODBC 数据源中创建一个DSN(data source name,数据源名)。LabSQL 与数据库之间的连接就是建立在DSN 基础之上的。其连接流程如图2 所示。

3.3 LabSQL VIs 分类LabSQL VIs 按照功能可分为四类:Command VIs;Connection VIs;Recordset VIs;Top Level VIs。Command VIs 的功能是完成一系列的基本ADO 操作,例如,创建或删除一个Command,对数据库中的某一个参数进行读或写等。Connection VIs 的功能是管理LabVIEW 与数据库之间的连接。Recordset VIs 用于对数据库中的记录进行各种操作,例如,创建或删除一条记录,对记录中的某一条目进行读或写等。Top Level VIs 属于顶层的LabSQL 应用,对前三类LabSQL VIs 某些功能的封装,例如,SQL Execute.VIs 可用于直接执行SQL 命令。

3.4 利用LabSQL 开发的基本步骤

利用LabSQL 在数据库操作中可实现应用程序与数据库之间的数据交互传递。一般的简单操作步骤如图3 所示。

4 LabSQL 应用实例

本应用实例是基于VI 的随动测试系统,该测试系统需要对事先存储的各测试点基本资料,标准值、上下限值进行读取,然后与采集的数据值进行计算、判断,并进行状态记录存储和管理。其数据库采用的是Microsoft Access 系统,它的使用和维护较简单,并且能够满足本系统的需要。限于篇幅,本文只对打开数据库、查询指定的记录的字段值和向数据库添加、删除、修改记录的实现方法作一下介绍,以起到抛砖引玉的作用。图四即为笔者编写的对数据库进行简单操作的框图。

具体步骤如下:第一步:首先通过ADOCreate.vi 创建一个Connection对象,然后利用ADOConnection Open.vi 建立与数据库的连接,数据库由字符串ConnectionString“DSN=myDB”。(myDB 是一个在Windows ODBC 数据源中创建的一个DSN,并与想要连接的数据库相连接。第二步:利用ADO RecordsetCreate.vi 创建一个Recordset 对象,然后利用ADO Recordset Open.vi 打开Recordset 对象,并同时利用SQL 查询命令获得数据库表中的全部或部分记录。第三步:通过功能选择按钮来选择控制对数据库的操作(查询、添加、删除、修改)。第四步:利用ADORecordset Close.vi 和ADO Connection Close.vi 关闭与数据库之间的连接。 以上所举的例子只是对数据库的基本操作,如果综合利用LabSQL 的四类VIs,就可以实现复杂的数据库操作。另外注意Microsoft ADO 控件具有远程数据库访问的功能,但是LabSQL 并没有开发这一功能。

5 小结

实践证明,在LabVIEW 利用LabSQL 数据库访问工具包实现对数据库的访问,比其它方式操作更简洁,更容易理解,不用精通ActiveX 技术和SQL 语言。充分利用了现有的资源,就可以数据库的实时操作,应该是一个值得学习和推广的方法。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据
    +关注

    关注

    8

    文章

    6511

    浏览量

    87590
  • 数据库
    +关注

    关注

    7

    文章

    3590

    浏览量

    63365

原文标题:轻松教你搞定数据库应用

文章出处:【微信号:gh_15eff9efd85b,微信公众号:漫谈labview学习】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    ASP.NET数据库编程

    ),可以轻松地访问各种数据源的数据,包括OLEDB所支持的和ODBC支持的数据库。下面介绍ADO.NET中最重要的两个概念:Managed Provider和DataSet。Manag
    发表于 01-08 09:00

    Delphi中数据库控制组件

    组件进行介绍。(1)数据库存取控制组件:负责连接数据库本身,不包含数据的显示与输入。TDatabase组件:Database1.AliasName:='MYDATABASE';{指定数据库
    发表于 05-10 11:09

    labvies访问数据库

    两个文件。再次运行时,LabVIEW 的功能模块就会自动加载LabSQL。3.2 LabSQL 的配置 LabSQL 与数据库之间是通过ODBC 连接,用户需要在ODBC 中指定数据源名称和驱动程序
    发表于 08-26 10:19

    labview 数据库操作问题

    各位大侠,现在要用labview 连接数据库,进行相关的数据库操作,刚开始用 LABSQL但是用了几天发现,使用网络数据库而且同时又几台客户端同时使用时会偶尔报错,看了相关的资料,好像LABSQL
    发表于 07-23 17:06

    数据库连接

    在利用 LabVIEW数据库工具包操作数据库之前,需要先连接数据库,这就像操作文件之前,先要打开文件一样。在这里我们利用UDL连接数据库。Microsoft设计的ODBC标准只能访问关
    发表于 06-29 21:29

    建立与数据库的连接

    在利用 LabVIEW数据库工具包操作数据库之前,需要先连接数据库,这就像操作文件之前,先要打开文件一样。在这里我们利用UDL连接数据库。Microsoft设计的ODBC标准只能访问关
    发表于 07-01 21:24

    数据库管理

    如题:用labview操作access数据库做公司测试流程管控。因测试数据量大,数据生成多,现在accdb文件已经有50M了,现在发现数据库在本地操作都很快,但是放在远端服务器后操作就
    发表于 11-08 16:58

    数据库SQL Server 2008 R2版推出OSS版本数据上云

    通过外网迁移,则OSS会收取外网流出流量的费用。使用步骤也十分简单,轻松三步搞定:一是准备好本地数据库,二是将本地备份文件上传到OSS并获取文件的URL,三是将备份文件从OSS迁移至RDS,就可以
    发表于 01-17 11:10

    QuickBI助你成为分析师——搞定数据

    分析师”。产品的核心流程如下图所示,QuickBI实现无缝集成云上数据库:支持阿里云多种数据源,包括但不限于 MaxCompute、RDS(MySQL、PostgreSQL、SQL Server
    发表于 03-28 12:43

    LABVIEW对数据库的操作

    关于数据库,只要知道简单的SQL语言,就可以轻松的进行操作。有些复杂的测试数据,非常适合用数据库存储。附件是我编写的吉时利2400测***曲线的例子,标准件的波形图保存在了
    发表于 12-10 21:23

    什么是时序数据库

    本文根据演讲视频以及PPT整理而成。本文将主要围绕以下四个方面进行分享:时序数据与时序数据库时序数据库的演变时序数据库对比总结一、时序数据
    发表于 07-12 08:35

    最新国产数据库排名

    最新国产数据库排名,本篇文章约14000字,包含如下5部分内容:1.开篇2.国产数据库产品清单,包括产品名称,产品类别及厂商名称;3.国产数据库各产品概述,产品基本介绍、应用场景等;4.国产
    发表于 07-28 08:06

    什么是数据库

    什么是数据库数据库的主要特点有哪些?数据库的基本结构是由哪几部分组成的?
    发表于 09-23 09:09

    嵌入式数据库相关资料下载

    的,对于嵌入式设备,其速度更快,效果更理想。嵌入式运行模式允许嵌入式数据库通过 SQL 来轻松管理应用程序数据,而不依靠原始的文本文件。
    发表于 10-27 07:53

    Java与'嵌入式' PostgreSQL数据库单元测试的相关资料分享

    。但总难免会用到特定数据库的特性,这时候就无法用前述各种数据库进行测试了。非要单元测试中覆盖到所用的数据库特性的话可以选择用 docker,如Testcontainers, 经过模块扩展,它可以由 do...
    发表于 12-21 07:56