NIDays专题 LabVIEW技术专题
如何使用 LabVIEW 存取本机 Access 资料库
一、何谓资料库
以最简单的方式来说,资料(Data)指的是未经处理的原始资料,例如:个人
姓名、贂品资料,户籍资料、学生成绩...等等。基本上,所谓的「资料库系统」
就是餵了帮助人门处理大量的资料。举例来说,STDB 网站就是一个资料库,裡
面有许多网友的个人资料、发表文章、收藏文章...等等。这些资料若以人工来
处理相当费时,所以电脑化的资料库管理也就应运而生。
「资料库(DataBase)」,则是一种特殊设计的软体,它可以将资料以数位化
的方式保存在电脑中。另一个常见的名词:资料库管理系统(DataBase
Management System,DBMS),则指的是一组软体的集合,它们可以提供我门操作
在资料库的资料,例如:储存、异动、查询与备份等功能。
在资料库的实做上,有一些不同的设计方法,像是早期的阶梯式
(Hierarchical)、网路式(Network)等架构、目前主流的关联式(Relational)架
构,以及近年来兴起的物件导向式(Object-Oriented)等不同架构被使用。随著
实做的方法不同,资料库又被称為「阶层式衣料库」、「网路式资料库」与「关
联式资料库」等,目前市场上绝大多数的资料库,都是属於「关联式资料库」。
二、关联式资料模型
所谓的资料模型,指的是在使用者与电脑系统间一致的抽象模式,关联式资
料库就是其中的一种,同时也是目前最广為使用的模型。在这裡所谓的模型,就
是资料的抽象表示方式。在关联式资料模型中,一个资料库是由一群资料表
(Table)所集合而成;而资料表(Table)又是由一些记录(Record)所组成;每一笔
纪录则是由一些栏位(Field)所组成。不过在关联式资料模型中,同一个资料表
中的纪录,其组成的栏位都必须相等。
常常使用 LabVIEW 的人或是常常写程式的人,对於 Array 应该都不陌生吧。
我个人认為,许多栏位(Field)集合,就是一维 Array;纪录(Record)就是二维
Array;而资料表(Table)就是三维 Array。
测试测量子网
NIDays专题 LabVIEW技术专题
三、关联式资料库管理系统
所谓的「关联式资料库管理系统(Relational DataBase Management System,
RDBMS)」,指的是资料库设计上採用的是关联式资料模型。目前主流的资料库管
理系统,如 Microsoft SQL Server、Microsoft Access、Oracle、Informix 等
皆属於关联式资料库管理系统。一般来说,资料库管理系统的功能应包含:
资料定义(Data Define):您可以定义资料表中要有什麼栏位,以什麼样的资料
型别存放,或者是删除资料表。
资料处理(Data Manipulation):您可以对资料表中的资料依照所指定的条件,
做新增、修改、删除的工作。
资料查询(Data Query):您可以对资料库中的资料进行过滤,列出符合条件的资
料纪录。
资料安全的管理(Data Security):资料库通常不只一个人在使用,所以必须要
管制使用者所能够修改资料的权限。
上述的功能中,以新增、修改、删除资料定义、纪录与资料安全管理,為最
基本的资料库操作。但其中的「资料查询」却是可以将资料过滤,產生有用的资
讯。这些新增、修改、删除与查询的操作,都可以透过 SQL 指令来完成。所谓
SQL 指令,指的是依照标準的 SQL 语法,所下达的资料库操作命令。有关 SQL 语
法,本期电子报暂时不详细说明。
四、為什麼使用 LabVIEW 会需要用到资料库
对於一般学生来说,LabVIEW 使用来做仪器自动控制的工具,常常使用
LabVIEW 来做一些实验数据的读取,通常,读取到的资料量都想当少。但是如果
您在工厂中,数以百计的仪器都需要使用 LabVIEW 做仪器自动控制,每一台仪器
又会產生一些资料档或是记录档,此时,如过将所以资讯分存於单独的电脑中,
那麼会造成资料分散、不集中的缺点,我门需要将资讯统筹集中在一起,所以需
要将资料存放於资料库中。
此外,资料库可以处理的资料量远比一般纯文字档能处理的资料量大。一个
Microsoft Access 资料库可以储存 2GB 的资料量,而 Microsoft SQL Server 理
测试测量子网
NIDays专题 LabVIEW技术专题
论上能存放的资料量是无权大。而且资料库具有优异的查询效能,可以协助我们
将庞大的资料过滤,得到我们真正想要的资料。
以下,我们就要用一个简单的例子,学习如何使用免费的 SQL 元件存取本机
Access 资料库。
五、运用 LabSQL 免费元件来做到与本机 Access 资料库连结,分解步骤:
1. 首先,下載LabSQL免費元件,然後解壓縮
下載地 1:http://www.jeffreytravis.com/lost/labsql.html
2. 解壓縮後,將資料夾「LabSQL ADO functions」整個複製到「C:\Program
Files\National Instruments\LabVIEW 7.0\user.lib\」資料夾內。
3. 然後開啟 LabVIEW,此時會發現在「User Libraries」裡面已經有 LabSQL
的元件了
4. 我們等一下要開啟 Example 裡面的範例,在 Example 資料夾內,有下列四
個檔案。
测试测量子网
NIDays专题 LabVIEW技术专题
5. 現在,我們先開啟第一個範例:「Example - Fetch a Table.vi」
6. 在程式面板上,請注意看唷,是不是有一個「DSN=myDB;」的字樣呢。其
實我們就是希望程式去對 Example 資料夾裡面的「Sample DataBase.mdb」
去做查詢、加入資料等動作,但是,電腦要如何才知道 myDB 指的就是
Sample DataBase.mdb 呢?這就需要我們去做一些設定。
7. 好,大家應該都是使用微軟的作業系統吧!!請按「 」。站長我看
到這樣的畫面:
测试测量子网
NIDays专题 LabVIEW技术专题
8. 我想要找一個叫做「系統管理工具」的選項,但是目前並沒有看到,沒關
係,用滑鼠按右鍵,選「內容」。
测试测量子网
NIDays专题 LabVIEW技术专题
9. 選擇:「自訂」
10.然後,在「進階」裡面,將「系統管理工具」的顯示位置稍作修改,最後
按「確定」。
测试测量子网
NIDays专题 LabVIEW技术专题
11.在「系統管理工具」裡面,選擇「資料來源 (ODBC)」
测试测量子网
NIDays专题 LabVIEW技术专题
12.在「系統資料夾名稱」處,選取「新增」
13.選擇「Microsoft Access Driver(*.mdb)」,然後按「完成」
14.資料來源名稱假設輸入:「myDB」,在「資料庫」處,按「選取」,然後
選擇你的資料庫的路徑,選好後,按下確定
测试测量子网
NIDays专题 LabVIEW技术专题
15.然後就可以看到我們成功新增的設定
16.最後回到範例程式,按下執行,就可以看到我們真的成功地從資料庫檢索
出一些資料了。
测试测量子网
NIDays专题 LabVIEW技术专题
17.更多的範例,請您自行先看看其他的範例,然後歡迎在討論版上提出來,
大家一起討論。
测试测量子网