labview訪問(wèn)sqlite數(shù)據(jù)庫(kù)接口研究

labview訪問(wèn)sqlite數(shù)據(jù)庫(kù)接口研究

ID:18864277

大小:68.50 KB

頁(yè)數(shù):5頁(yè)

時(shí)間:2018-09-26

labview訪問(wèn)sqlite數(shù)據(jù)庫(kù)接口研究_第1頁(yè)
labview訪問(wèn)sqlite數(shù)據(jù)庫(kù)接口研究_第2頁(yè)
labview訪問(wèn)sqlite數(shù)據(jù)庫(kù)接口研究_第3頁(yè)
labview訪問(wèn)sqlite數(shù)據(jù)庫(kù)接口研究_第4頁(yè)
labview訪問(wèn)sqlite數(shù)據(jù)庫(kù)接口研究_第5頁(yè)
資源描述:

《labview訪問(wèn)sqlite數(shù)據(jù)庫(kù)接口研究》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫(kù)。

1、LabVIEW訪問(wèn)SQLite數(shù)據(jù)庫(kù)接口研究【摘要】本文介紹了LabVIEW環(huán)境下利用API技術(shù)訪問(wèn)開(kāi)源數(shù)據(jù)庫(kù)SQLite的方法,實(shí)現(xiàn)了可跨平臺(tái)操作的數(shù)據(jù)庫(kù)。采用此種方法完成了對(duì)過(guò)程控制中歷史數(shù)據(jù)的保存、數(shù)據(jù)分析等數(shù)據(jù)庫(kù)訪問(wèn)管理,并取得了較好的效果?!娟P(guān)鍵字】LabVIEWSQLite數(shù)據(jù)庫(kù)Vxworks跨平臺(tái)數(shù)據(jù)庫(kù)利用LabVIEW開(kāi)發(fā)應(yīng)用軟件時(shí)經(jīng)常需要對(duì)數(shù)據(jù)庫(kù)訪問(wèn),尤其是在過(guò)程控制中要大量保存歷史數(shù)據(jù)。通過(guò)數(shù)據(jù)庫(kù)訪問(wèn)技術(shù),用戶(hù)可以方便的創(chuàng)建一個(gè)使用數(shù)據(jù)庫(kù)來(lái)管理大量數(shù)據(jù),存儲(chǔ)過(guò)程數(shù)據(jù)并且能夠分析過(guò)程結(jié)果的自動(dòng)控制系統(tǒng)。但是LabVIEW本身并不具備數(shù)據(jù)庫(kù)訪問(wèn)功能。據(jù)作者所知

2、,目前常見(jiàn)的解決這個(gè)問(wèn)題的工具包都是利用LabVIEW的ActiveX功能,把調(diào)用MicrosoftADO控件,和SQL語(yǔ)言對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)進(jìn)行了不同程度封裝。使得即使不了解MicrosoftADO控件以及SQL語(yǔ)言也可以操作數(shù)據(jù)庫(kù)。由于這些工具包都是基于ADO控件的,而ADO是Windows系統(tǒng)的一個(gè)數(shù)據(jù)庫(kù)訪問(wèn)控件,只能運(yùn)行在Windows平臺(tái)上,并不支持跨平臺(tái)應(yīng)用。作者近來(lái)在做的一個(gè)項(xiàng)目用的是Vxworks的系統(tǒng)環(huán)境,現(xiàn)有的數(shù)據(jù)庫(kù)工具包不在適用。在這里我們引入了SQLite數(shù)據(jù)庫(kù)。1.SQLite數(shù)據(jù)庫(kù)簡(jiǎn)介SQLite第一個(gè)Alpha版本誕生于2000年5月。SQLite是

3、一款輕型的開(kāi)源數(shù)據(jù)庫(kù)、遵守ACID的關(guān)聯(lián)式數(shù)據(jù)庫(kù)管理系統(tǒng),它的設(shè)計(jì)目標(biāo)是嵌入式的,而且目前已經(jīng)在很多嵌入式產(chǎn)品中使用了它,它占用資源非常的低,在嵌入式設(shè)備中,可能只需要幾百K的內(nèi)存就夠了。它能夠支持Windows/Linux/Unix/Vxworks等主流的操作系統(tǒng),同時(shí)能夠跟很多程序語(yǔ)言相結(jié)合,比如Tcl、C#、PHP、Java等,同樣比起Mysql、PostgreSQL這兩款開(kāi)源世界著名的數(shù)據(jù)庫(kù)管理系統(tǒng)來(lái)講,它的處理速度比他們都快。更多介紹可訪問(wèn)其官方網(wǎng)站Http://www.sqlite.org1.1SQLite數(shù)據(jù)庫(kù)特性a.零配置:不用安裝和管理配置。并且獨(dú)立,不需要

4、額外依賴(lài),只要有一個(gè)編譯好的動(dòng)態(tài)庫(kù)文件即可。b.存儲(chǔ)在單一文件中的完整數(shù)據(jù)庫(kù),而且不受不同操作系統(tǒng)字節(jié)順序的影響;數(shù)據(jù)庫(kù)轉(zhuǎn)移不需要格式轉(zhuǎn)換。c.支持SQL語(yǔ)言,數(shù)據(jù)庫(kù)操作簡(jiǎn)單,方便程序移植。d.數(shù)據(jù)庫(kù)可以很大,最大可以到2TB。雖然不可能會(huì)用的那么大。起碼沒(méi)有以前遇到的2GB的限制。a.提供完整的API應(yīng)用。使用簡(jiǎn)單。提供源代碼,可以根據(jù)需要重編譯應(yīng)用于其他平臺(tái)。1.通過(guò)LabVIEW對(duì)SQLite數(shù)據(jù)庫(kù)訪問(wèn)操作SQLite數(shù)據(jù)庫(kù)提供了完成的API接口,我們這里通過(guò)LabVIEW的API接口功能(調(diào)用庫(kù)函數(shù)節(jié)點(diǎn))來(lái)實(shí)現(xiàn)對(duì)SQLite數(shù)據(jù)庫(kù)的操作。這里我們需要一個(gè)已編譯的動(dòng)態(tài)鏈

5、接庫(kù)。由于SQLite是開(kāi)源的,其源代碼可以通過(guò)www.sqlite.org上去下載,并根據(jù)運(yùn)行目標(biāo)編譯不同的動(dòng)態(tài)鏈接庫(kù)。這里需要強(qiáng)調(diào)的是由于我們的開(kāi)發(fā)平臺(tái)是Windows系統(tǒng),需要同時(shí)編一個(gè)可用于Windows系統(tǒng)的動(dòng)態(tài)鏈接庫(kù)DLL。以便開(kāi)發(fā)使用和調(diào)試。2.1SQLite數(shù)據(jù)的基本操作流程圖1:SQLite數(shù)據(jù)庫(kù)操作基本步驟3、一次完成的SQLite數(shù)據(jù)庫(kù)操作包括1、打開(kāi)(沒(méi)有為自動(dòng)新建)數(shù)據(jù)庫(kù);--->2、編譯SQL語(yǔ)句。由于SQLite不能直接執(zhí)行SQL指令,需要將SQL指令編譯成字節(jié)碼。3、執(zhí)行操作4、獲取執(zhí)行結(jié)果;5、銷(xiāo)毀SQL指令字節(jié)碼;6、關(guān)閉數(shù)據(jù)庫(kù)。2.2新建

6、(或者打開(kāi)已有)數(shù)據(jù)庫(kù)A、打開(kāi)(新建)數(shù)據(jù)庫(kù)打開(kāi)數(shù)據(jù)庫(kù)用到的是sqlite3_open()。函數(shù)原型如下:intsqlite3_open(constchar*filename,/*Databasefilename(UTF-8)*/sqlite3**ppDb/*OUT:SQLitedbhandle*/);用這個(gè)函數(shù)開(kāi)始數(shù)據(jù)庫(kù)操作?! ⌒枰獋魅氲膮?shù)是數(shù)據(jù)庫(kù)文件的完整路徑,比如:c:Test_Database.db。2注:文件名不需要一定存在,如果此文件不存在,SQLite會(huì)自動(dòng)建立它。如果它存在,就嘗試把它當(dāng)數(shù)據(jù)庫(kù)文件來(lái)打開(kāi)。sqlite3**返回的是數(shù)據(jù)庫(kù)的操作句柄(引用)

7、,是一個(gè)32位有符號(hào)整型數(shù)據(jù)。函數(shù)返回值表示操作是否正確,如果返回SQLITE_OK(0)則表示操作正常。圖2:LabVIEW中打開(kāi)數(shù)據(jù)庫(kù)節(jié)點(diǎn)2.1執(zhí)行SQL語(yǔ)句在SQLite中提供一些已封裝的函數(shù)供直接執(zhí)行SQL語(yǔ)句,如sqlite3_exec()、sqlite3_get_table()。這里我們主要介紹SQLite的SQL執(zhí)行過(guò)程,對(duì)于SQLite中已封裝的函數(shù)請(qǐng)參考相關(guān)說(shuō)明,這里不再闡述。通過(guò)圖1所示,我們可以看到SQLite執(zhí)行一條SQL語(yǔ)句需要三個(gè)步驟,與之相關(guān)的函數(shù)包括:sqlite3_pr

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶(hù)上傳,版權(quán)歸屬用戶(hù),天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶(hù)請(qǐng)聯(lián)系客服處理。