于LabWindows/CVI的数据库编程

发布者:信息巫师最新更新时间:2012-06-27 来源: 21ic 关键字:LabWindows  ODBC  SQLToolkit  数据库 手机看文章 扫描二维码
随时随地手机看文章

  在测试系统的应用开发中,测试数据通常是以文件的方式进行组织管理的。这样的数据存储方式有一定的局限性,特别是远程测试系统,对于大量的数据不能及时的反馈。要实现方便灵活的管理和访问,数据库是一种必然的选择。

  LabWindows/CVI是一个完全的标准C开发环境,用于开发虚拟仪器应用系统。CVI5.5及以后的版本提供了支持数据库的sQLTOOLKIT工具包,该工具包提供了丰富的数据库操作函数,给开发带来了方便和快捷。

  1基于PCI的数据采集

  对于非NI公司的PCI数据采集卡,一般的驱动程序都是以动态链接库的形式提供的。对于CVI而言,可以直接利用驱动程序的动态链接库文件实现对采集卡的控制。本文采用中泰PCI-8333数据采集卡进行信号采集、存储和输出。PCI-8333数据采集卡具备丰富的采集与控制方法,同时也提供了动态链接库文件和头文件。

  1.1缩写采集卡头文件

  虽然厂商提供了头文件,但是LabWindows/CVI需要用c语言对头文件进行改写,参照厂商提供的头文件,编写部分方法声明如下:

编写部分方法声明

  注意,头文件中包含的方法一定要与动态链接库中的方法—致。编写后,将该头文件添加到应用程序中。在程序源文件中声明头文件,添加#include“PCI8KP.h”。

  1.2产生dll导入库文件

  将采集卡厂商提供的动态链接库文件加入刭应用程序所在的文件夹中,选择菜单:Option-GenerateDLLImportLibrary,在弹出的对话框中选择OK按钮,会弹出动态链接库选择对话框,选择加入到程序中的动态链接库后,会在该文件夹下产生导入库。将该导入库也加入到当前程序的工程中。

  1.3应用动态链接库

  上面的两个步骤完成后,便可在CVI应用程序中使用该动态链接库,调用头文件中已声明的方法进行数据采集源程序的编写,实现对效据采集卡的控制。

  2ODBC及SQLToolkit工具包

  ODBC(OpenDatabaseConnectivity,开放数据库互连)是Microsoft公司开发的一套开放数据库系统应用程序接口规范,它提供了统一的数据库应用编程接口(API),为应用程序提供了一套高层调用接口规范和基于动态连接库的运行支持环境。使用ODBC开发数据库应用时,应用程序调用的是标准的ODBC函数和SQL语句,数据库底层操作由各个数据库的驱动程序完成。因此应用程序有很好的适应性和可移植性。

  LabWindows/CVISQLToolkit是用于CVI数据库访问的附加工具包,它集成了一系列的高级功能模块,这些模块封装了大部分的数据库操作和一些高级数据库访问功能。LabWindows/CVISQLToolkit支持主流的数据库驱动,对于数据库开发商及第三方开发者提供的驱动,LabWindows/CVISQLToolkit也一样采用标准的ODBC编译方式,通过这种扩展方式,可以灵活支持任何符合ODBC开发标准的数据库系统。

高级功能模块

  3数据库操作

  Oracle数据库管理系统是一个以关系型和面向对象为中心管理数据的数据库管理软件系统。Orade数据库有如下几个强大的特性:支持多用户、大事务量的事务处理,数据安全性和完整性的有效控制,支持分布式数据处理等。因其在数据安全性与数据完整性控制方面的优越性能,以及跨操作系统、跨硬件平台的数据互操作能力,使得越来越多的用户将Oracle作为其应用数据的处理系统。

  3.1创建数据库

创建数据库

  最后创建数据存储DATA_ACQUIRE,这里不再列举数据库脚本代码。

  3.2创建DSN

  在使用工具包之前,首先需要在操作系统中的ODBC数据源中创建一个DSN,工具包与数据库的链接就是建立在DSN基础上的。创建DSN的步骤如下:

(1)在操作系统控制面板中选择“数据源(ODBC)”。
(2)选择“系统DSN选项卡”添加按钮。
(3)在出现的“创建新数据源”对话框驱动程序列表中选"OracleinOraOb10g_homel”,点击完成。
(4)配置"OracleODBCDriverConfiguration”,如图2所示:[page]

 创建DSN

  这样就完成了DSN的创建,从此以后,工具包就可以利用这个DSN访问与之相关联的数据库了。

  3.3采集数据插入数据库

采集数据插入数据库

采集数据插入数据库

  3.4显示结果

  检索数据库中所有的数据,提取DATA字段,将数据组合成数组,通过Graph控件把数据显示出来。也可以按照时间条件检索数据库,Graph控件中将会显示符合查询条件的数据。

显示符合查询条件的数据

显示符合查询条件的数据

  4结论

  CVI和数据库是开发虚拟仪器应用软件的不可缺少的组成部分,利用专门的数据库接口工具包可以方便地实现CVI应用程序与数据库的链接。本系统的实现表明,通过CVI与Oracle数据库质检进行数据交互,使得测试系统有了强大的功能,在组建复杂的测试系统中具有广泛的应用价值。

关键字:LabWindows  ODBC  SQLToolkit  数据库 引用地址:于LabWindows/CVI的数据库编程

上一篇:通过虚拟现实对装甲越野车辆进行仿真和测试
下一篇:使用LabVIEW与PXI进行自动化蓝光播放机视频和音频测试

推荐阅读最新更新时间:2024-03-30 22:27

ScaleFlux为高性能数据库提供超密集的计算存储解决方案
ScaleFlux为高性能数据库提供超密集的计算存储解决方案 ScaleFlux CSD 2000,利用Supermicro FatTwin服务器构建高效的计算存储集群 作为大规模部署计算存储的领导者,ScaleFlux于近日宣布其旗舰CSD 2000解决方案与Supermicro的FatTwin®(一种高密度4U多节点系统)相契合——提供了一个完全集成的高性能、经济高效的平台,非常适合部署Redis on Flash (RoF)。 RoF通过利用高性能闪存作为主内存 (RAM) 下方的存储层来增加Redis集群的容量,其性能受数据访问模式的影响很大。闪存与RAM的比率越高,闪存存储层对数据库性能的影响就越大,并且在许
[嵌入式]
Perst嵌入式数据库存储结构分析与研究
引言 Perst是McObject公司发布的一款非常袖珍的开源嵌入式数据库,是一个简单,快速,便捷,面向对象,适合java与.Net的数据库。Perst不需要专门的编译器与预处理器,支持ACID事务 。对于在资源受限的移动设备(如手机,PDA等)上存储大量数据和对数据进行频繁的I/O操作往往要消耗很多的设备资源。由于移动设备内存小,性能较差,如果采用关系数据库(如 SQLServer2000,Oracle)管理数据,仅靠其有限的内存资源是不能运行这些数据库管理系统的,这样就有必要采用一些特殊的数据库系统。 Perst数据库正是为这类设备研究开发的,它们是如何在资源受限的设备上完成大量数据的访问操作。其实这些设备的系统资源主
[嵌入式]
基于Internet的触摸屏数据库远程监控系统
引言     网络通信技术已经改变了人们的生活,同时也正在改变工业自动化的方方面面。因此,中国 电器 工业协会通用低压 电器 分会在《低压电器新产品发展总体思路》中明确提出:“全面实现低压电器主要产品网络化、智能化、可通信化。要求我国第3代低压电器主要产品、第4代低压电器,全部实现网络化、智能化、可通信,能与多种 现场总线 连接,也可直接与工业以太网连接。”鉴于此,近年来,基于 现场总线 、以太网和直联网(Internel)技术的可编程控制器(Programmable Logic Condoner, PLC )、触摸屏(Human Machlne Interface,HMI)、变额器,智能开戈等各类智能低压电器得到了民足发展,在智
[嵌入式]
吕本富:5亿消费者背后,从信息导流到数据库营销
【作者:中国科学院研究生院副院长吕本富】 每年的百度世界都是重磅消息宣布的时机,今年也不例外。9月2日,在2011百度世界大会上,百度公司创始人李彦宏揭开了潘多拉盒子的盖子:宣布向行业完全开放首页资源,百度首页将不再是一个简洁的搜索框,而是一个聚合网民个性化需求的超级平台。这一变化也意味着,百度正在试图走出单一搜索的王国,构建社会化网络版图。 从搜索到社会化网络蜕变 如今,用户需求由信息向应用的转移,SNS、微博及各种娱乐、沟通、购物、工具等应用与日常生活结合愈加紧密,百度首页的重大调整代表着从搜索导流向“以人为中心”分配信息及应用的过渡。但以人为中心的信息、应用匹配离不开一个帐号系统和帐号背后的用户关系。
[网络通信]
LabSQL在智舌数据库设计方面的应用
1 引言   随着虚拟仪器技术的广泛应用,基于LabVIEW开发各种现代测试系统时,如何管理和分析测试数据是设计者所关注的热点。一般在实际测量过程中,由于采集得到的数据量非常巨大,不可能将所有的数据存储并进行处理,除此之外,还要记录系统的各项测试参数。这就不仅要求数据冗余少,而且能够实现自动存储和管理功能。数据库恰好满足了目前的数据存储需求,而研究基于LabVIEW开发平台访问数据库技术,正是现代测试系统设计所必需的。 2 基于LabVIEW开发环境访问数据库技术   鉴于LabVIEW开发环境不能直接对数据库操作,主要是通过以下四种方式间接对其进行访问 :   (1) 利用其他语言编写DLL程序访问数据库   动态链接
[测试测量]
LabSQL在智舌<font color='red'>数据库</font>设计方面的应用
嵌入式内存数据库引擎的研究与设计
1 嵌入式内存数据库技术发展的现状   数据库理论与技术的发展极其迅速,其应用日益广泛,在当今的信息社会中,它几乎无所不在。以关系型为代表的三大经典(层次、网状、关系)型数据库在传统的(商务和管理的事务型)应用领域获得了极大成功,然而它们在现代的(非传统)工程和时间关键型应用面前却显得软弱无力,面临着新的严峻的挑战,由此而导致了嵌入式实时数据库的产生和发展。在实时应用中,事务在运行前的操作逻辑(操作类型、顺序等)、数据集及其结构、行为以及时间的相关性等都是可预分析的。然而,对磁盘数据库而言,数据的I/O 是造成事务执行时间不确定、预报不准确的关键因素。为此,要求以大内存作为实时数据库的主要存储介质,使一个事务在活动期间没有I/
[嵌入式]
飞思卡尔和卡巴斯基实验室合作提升网络安全和性能
基于Power Architecture技术的双核飞思卡尔处理器采用卡巴斯基 SafeStream数据库,提供网络反恶意保护 德州奥斯汀-2007年1月31日 -通信处理器的领导者飞思卡尔半导体公司和安全内容管理解决方案的领先开发商卡巴斯基实验室(Kaspersky Lab)合作,推出了高性能网络防病毒解决方案,可降低OEM成本,缩短面市时间。 该平台紧密集成了飞思卡尔采用世界一流的基于硬件的模式匹配技术的MPC8572E PowerQUICC III双核处理器和卡巴斯基的SafeStream数据库,能够快速开发高性能、经济高效的网络安全设备,具有强大的防病毒功能。 由于攻击目标不断从寻找操作系统的漏洞变为攻击特定企业和
[焦点新闻]
在LabVIEW中数据库建立与管理功能实现方法研究
  在LabVIEW中利用其ActiveX功能,调用Microsoft ADO控件,再利用SQL语言,通过底层ODBC接口函数和ODBC数据库驱动程序访问数据库,其结构层次如图1所示。   ADO的目标是访问、编辑和更新数据源;利用ADO所提供的类和对象可以完成以下操作:   (1)连接到数据源;(2)指定访问数据源的命令,同时可带变量参数或优化执行;(3)执行命令;(4)如果这个命令使数据按表中行的形式返回,则将这些行存储在易于检查、操作或更改的缓存中;(5)可使用缓存行的更改内容来更新数据源;(6)提供常规方法检测错误;ADO对象模型如图2所示。   (1)在打开连接前使用ConnectionString、Conn
[测试测量]
在LabVIEW中<font color='red'>数据库</font>建立与管理功能实现方法研究
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
热门活动
换一批
更多
最新测试测量文章
更多精选电路图
换一换 更多 相关热搜器件
更多每日新闻
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved