在LabVIEW中數(shù)據(jù)庫建立與管理功能實(shí)現(xiàn)方法研究
[導(dǎo)讀]
在LabVIEW中利用其ActiveX功能,調(diào)用Microsoft ADO控件,再利用SQL語言,通過底層ODBC接口函數(shù)和ODBC數(shù)據(jù)庫驅(qū)動(dòng)程序訪問數(shù)據(jù)庫,其結(jié)構(gòu)層次如圖1所示。
ADO的目標(biāo)是訪問、編輯和更新數(shù)據(jù)源;
在LabVIEW中利用其ActiveX功能,調(diào)用Microsoft ADO控件,再利用SQL語言,通過底層ODBC接口函數(shù)和ODBC數(shù)據(jù)庫驅(qū)動(dòng)程序訪問數(shù)據(jù)庫,其結(jié)構(gòu)層次如圖1所示。
ADO的目標(biāo)是訪問、編輯和更新數(shù)據(jù)源;利用ADO所提供的類和對(duì)象可以完成以下操作:
(1)連接到數(shù)據(jù)源;(2)指定訪問數(shù)據(jù)源的命令,同時(shí)可帶變量參數(shù)或優(yōu)化執(zhí)行;(3)執(zhí)行命令;(4)如果這個(gè)命令使數(shù)據(jù)按表中行的形式返回,則將這些行存儲(chǔ)在易于檢查、操作或更改的緩存中;(5)可使用緩存行的更改內(nèi)容來更新數(shù)據(jù)源;(6)提供常規(guī)方法檢測錯(cuò)誤;ADO對(duì)象模型如圖2所示。
(1)連接到數(shù)據(jù)源;(2)指定訪問數(shù)據(jù)源的命令,同時(shí)可帶變量參數(shù)或優(yōu)化執(zhí)行;(3)執(zhí)行命令;(4)如果這個(gè)命令使數(shù)據(jù)按表中行的形式返回,則將這些行存儲(chǔ)在易于檢查、操作或更改的緩存中;(5)可使用緩存行的更改內(nèi)容來更新數(shù)據(jù)源;(6)提供常規(guī)方法檢測錯(cuò)誤;ADO對(duì)象模型如圖2所示。
(1)在打開連接前使用ConnectionString、ConnectionTimeout和Mode屬性對(duì)連接進(jìn)行配置;
(2)使用DefaultDatabase屬性設(shè)置連接的默認(rèn)數(shù)據(jù)庫;
(3)使用Open方法建立到數(shù)據(jù)源的物理連接,使用Close方法將連接斷開;
(4)使用Execute方法執(zhí)行對(duì)連接的命令,并使用CommandTimeout屬性對(duì)執(zhí)行進(jìn)行配置。
3.2命令
通過已建立的連接發(fā)出的“命令(Command)”可以用某種方式來操作數(shù)據(jù)源。命令可以在數(shù)據(jù)源中添加、刪除或更新數(shù)據(jù),或者在表中以行的格式檢索數(shù)據(jù)。對(duì)象模型用Command對(duì)象來體現(xiàn)命令概念,Command對(duì)象定義了對(duì)數(shù)據(jù)源執(zhí)行的指定命令。使用Command對(duì)象查詢數(shù)據(jù)庫并返回Recordset對(duì)象中的記錄,以便執(zhí)行大量操作或處理數(shù)據(jù)庫結(jié)構(gòu)??梢允褂肅ommand對(duì)象的集合、方法和屬性進(jìn)行下列等操作:
(1)使用CommandText屬性定義命令(如SQL語句)的可執(zhí)行文本;(2)可使用Execute方法執(zhí)行命令并在適當(dāng)?shù)臅r(shí)候返回Recordset對(duì)象;(3)使用CommandTimeout屬性設(shè)置提供者等待命令執(zhí)行的時(shí)間;(4)通過設(shè)置ActiveConnection屬性使打開的連接與Command對(duì)象關(guān)聯(lián);(5)將Command對(duì)象傳送給Recordset的Source屬性以便獲取數(shù)據(jù)。
3.3記錄集
命令是在數(shù)據(jù)庫的表中按信息行返回?cái)?shù)據(jù)的查詢,并將這些行存儲(chǔ)在本地;ADO對(duì)象模型將該存儲(chǔ)體現(xiàn)為“記錄集(Recordset)”對(duì)象。記錄集是在行中檢查和修改數(shù)據(jù)最主要的方法。通過記錄集對(duì)象可執(zhí)行下列操作:
(1)指定可以檢查的行;(2)移動(dòng)行;(3)指定移動(dòng)行的順序;(4)添加、更改或刪除行;(5)通過更改行更新數(shù)據(jù)源;(6)管理Recordset的總體狀態(tài)。
使用ADO時(shí),通過記錄集對(duì)象可對(duì)幾乎所有數(shù)據(jù)進(jìn)行操作。
(2)使用DefaultDatabase屬性設(shè)置連接的默認(rèn)數(shù)據(jù)庫;
(3)使用Open方法建立到數(shù)據(jù)源的物理連接,使用Close方法將連接斷開;
(4)使用Execute方法執(zhí)行對(duì)連接的命令,并使用CommandTimeout屬性對(duì)執(zhí)行進(jìn)行配置。
3.2命令
通過已建立的連接發(fā)出的“命令(Command)”可以用某種方式來操作數(shù)據(jù)源。命令可以在數(shù)據(jù)源中添加、刪除或更新數(shù)據(jù),或者在表中以行的格式檢索數(shù)據(jù)。對(duì)象模型用Command對(duì)象來體現(xiàn)命令概念,Command對(duì)象定義了對(duì)數(shù)據(jù)源執(zhí)行的指定命令。使用Command對(duì)象查詢數(shù)據(jù)庫并返回Recordset對(duì)象中的記錄,以便執(zhí)行大量操作或處理數(shù)據(jù)庫結(jié)構(gòu)??梢允褂肅ommand對(duì)象的集合、方法和屬性進(jìn)行下列等操作:
(1)使用CommandText屬性定義命令(如SQL語句)的可執(zhí)行文本;(2)可使用Execute方法執(zhí)行命令并在適當(dāng)?shù)臅r(shí)候返回Recordset對(duì)象;(3)使用CommandTimeout屬性設(shè)置提供者等待命令執(zhí)行的時(shí)間;(4)通過設(shè)置ActiveConnection屬性使打開的連接與Command對(duì)象關(guān)聯(lián);(5)將Command對(duì)象傳送給Recordset的Source屬性以便獲取數(shù)據(jù)。
3.3記錄集
命令是在數(shù)據(jù)庫的表中按信息行返回?cái)?shù)據(jù)的查詢,并將這些行存儲(chǔ)在本地;ADO對(duì)象模型將該存儲(chǔ)體現(xiàn)為“記錄集(Recordset)”對(duì)象。記錄集是在行中檢查和修改數(shù)據(jù)最主要的方法。通過記錄集對(duì)象可執(zhí)行下列操作:
(1)指定可以檢查的行;(2)移動(dòng)行;(3)指定移動(dòng)行的順序;(4)添加、更改或刪除行;(5)通過更改行更新數(shù)據(jù)源;(6)管理Recordset的總體狀態(tài)。
使用ADO時(shí),通過記錄集對(duì)象可對(duì)幾乎所有數(shù)據(jù)進(jìn)行操作。
創(chuàng)建與數(shù)據(jù)庫的連接及建立記錄集的框圖程序如圖3所示。圖中在調(diào)用ADODB.Connection的Open方法節(jié)點(diǎn)時(shí),輸入的“ConnectionString”參數(shù)即指定連接的數(shù)據(jù)源名,格式為“DSN=數(shù)據(jù)源名”,可以通過更改數(shù)據(jù)庫源名,而實(shí)現(xiàn)與不同的數(shù)據(jù)庫連接。后面ADODB.Recordset的Open方法節(jié)點(diǎn)在執(zhí)行有效SQL語句后返回記錄集,以便對(duì)數(shù)據(jù)庫操作。
在返回的記錄集中添加一條記錄的框圖程序如圖4所示。調(diào)用ADODB.Recordset的AddNew方法節(jié)點(diǎn),向記錄集中添加一條記錄,并設(shè)置首字段的值,再調(diào)用Update方法節(jié)點(diǎn)設(shè)置其余字段的值,完成添加記錄后,系統(tǒng)將會(huì)自動(dòng)對(duì)數(shù)據(jù)庫進(jìn)行更新。
在返回的記錄集中添加一條記錄的框圖程序如圖4所示。調(diào)用ADODB.Recordset的AddNew方法節(jié)點(diǎn),向記錄集中添加一條記錄,并設(shè)置首字段的值,再調(diào)用Update方法節(jié)點(diǎn)設(shè)置其余字段的值,完成添加記錄后,系統(tǒng)將會(huì)自動(dòng)對(duì)數(shù)據(jù)庫進(jìn)行更新。
本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀
倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...
關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...
關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)