使用LabVIEW访问Microsoft Access

更新 Jul 21, 2021

环境

软件

  • LabVIEW
  • LabVIEW Database Connectivity Toolkit

Microsoft Access是Microsoft提供的常见数据库工具包。该KB提供基本操作,包括通过LabVIEW创建和连接数据库,插入,删除,更新和选择记录,以便新用户更好地了解。

1.准备Microsoft Access环境

确保开发计算机安装了Microsoft Access和Microsoft Access数据库引擎。用户可以从这里下载相关软件。大多数计算机默认情况下没有安装数据库引擎,这可能会在创建UDL文件时造成困难。 Microsoft Office 12.0 Access Database Engine OLE DB Provider 选项可能会丢失,用户无法访问.accdb扩展文件。
注意:用户必须安装32位数据库引擎,否则会出现错误-2147467259,请参阅此KB

 

2.数据库的基本概念和术语解释

数据库以分层结构组织和存储数据。 Access数据库文件包含多个表,这些表是一种数据类型的集合。每个表都有几个字段(列),表示某种类型的属性,如ID,名称和联系信息。每一行都是一个记录,代表一个单位,可能是一个人或一件商品。
结构化查询语言(SQL)是操作数据库的标准语言。它包括四个部分:数据定义,数据操作,数据控制和事件控制。前两个类别是常用的,例如创建新表,查询排序,添加或删除记录。

举个例子:
选择TOP 30 * FROM mytable WHERE [myprice]> 1000 AND myname <> somename ORDER BY myid ASC ,mydate DESC
此语句在mytable表中选择前30个记录(由*表示),myprice字段大于1000,且myname字段不等于somename,然后它们在myid字段中按升序排序,在mydate字段中按降序排序。
注意:数据库操作中的单词不区分大小写。例如,table和Table是相同的表,id和ID表示相同的字段。使用小写形式编写SQL语句可以获得相同的结果,但为了清晰和易读,SQL关键字通常用大写字母书写。

3.建立UDL数据库链接

UDL文件是连接LabVIEW和数据库的集线器。有两种方法可以创建新的UDL文件。
  • 第一种方法是创建一个新的文本文件,将后缀名称更改为.udl,然后双击以配置它。请参阅此链接
  • 第二种方法是在LabVIEW中创建UDL。选择LabVIEW >>工具>>创建数据链接以创建UDL并配置数据库位置。建议使用此方法,因为用户无需手动创建新文件并更改后缀名称。请参阅此链接

4.在LabVIEW中操作数据库

LabVIEW自带的数据库高级操作是SQL查询的封装,核心是使用SQL语言来操作数据库。下图显示了SQL语句的直接执行,它避免了高级操作无法排序显示和执行复杂嵌套语句困难的缺点。它还可以方便快捷地使用SQL的各种功能。


在LabVIEW中直接执行SQL的示例vi。


注意:字段具有不同的类型,例如数字,字符串,时间和地点。 SQL语句中还有不同的标识符:
  • 数值类型(无论是整数还是浮点)和价格数据类型的操作,用户可以直接输入数字,如id = 100
  • 字符串需要用单引号括起来,例如username ='John'
  • 时间需要用##括起来,例如#2010/1/1#。用户还可以使用Access CDate()提供的类型转换功能
  • 某些字段包含空格需要用[]括起来,否则将无法正确识别,例如[已保存级别] = 10

1.插入

INSERT INTO USERS(id,username,password) VALUES (123,'John','123fasdf')
用户可以为字段添加值,而无需每次都分配数据类型。
注意:字段用户名与内容类型相同,应包含在()中。

2.删除

DELETE FROM USERS WHERE time < #2010/1/1#
WHERE的功能:表示资格条件,例如大于(>),小于(<),不等于(<>), BETWEEN 值1 值2 ,关键字LIKE包括多个可能的值IN (值1,值2,...,值N)

3.更新

UPDATE USERS SET PRICE = 1000 WHERE id = > 5000
注意:并非所有字段都可以更新。例如, 此示例中的id定义为自动增量,不能重复也不能更改。

4.选择

SELECT top 3 * FROM USERS ORDER BY Price ASC, id DESC
在上面的语句中,执行ORDER BY操作。排序可以使用关键字ASC (升序)和DESC (降序)执行多个操作。上述声明中的对Price的操作按升序排序。对于同一Price,id按降序排序,如下图所示。



链接说明了在Access中SQL语句的使用。