SQLite數(shù)據(jù)庫(kù)多平臺(tái)應(yīng)用及常見(jiàn)錯(cuò)誤分析_第1頁(yè)
SQLite數(shù)據(jù)庫(kù)多平臺(tái)應(yīng)用及常見(jiàn)錯(cuò)誤分析_第2頁(yè)
SQLite數(shù)據(jù)庫(kù)多平臺(tái)應(yīng)用及常見(jiàn)錯(cuò)誤分析_第3頁(yè)
SQLite數(shù)據(jù)庫(kù)多平臺(tái)應(yīng)用及常見(jiàn)錯(cuò)誤分析_第4頁(yè)
SQLite數(shù)據(jù)庫(kù)多平臺(tái)應(yīng)用及常見(jiàn)錯(cuò)誤分析_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

SQLite是一個(gè)軟件庫(kù),實(shí)現(xiàn)了自給自足的、無(wú)服務(wù)器的、零配置的、事務(wù)性的SQL數(shù)據(jù)庫(kù)引擎。SQLite是世界上最廣泛部署的數(shù)據(jù)庫(kù)引擎之一。SQLite源代碼開(kāi)放,沒(méi)有授權(quán)限制。正是因?yàn)槠涿赓M(fèi)、輕巧、綠色等特點(diǎn),因此SQLite的應(yīng)用范圍很廣,在各種軟件上都有應(yīng)用,其中不乏Adobe、Apple、Firefox,甚至包括google、Microsoft、SUN這樣的企業(yè)。在上位機(jī)項(xiàng)目開(kāi)發(fā)中。SQLite的應(yīng)用也很廣泛,今天主要跟大家分享一下SQLite的部署、應(yīng)用及常見(jiàn)錯(cuò)誤分析。1

數(shù)據(jù)庫(kù)部署SQLite數(shù)據(jù)庫(kù)和其他數(shù)據(jù)庫(kù)相比,一個(gè)很大的優(yōu)勢(shì)在于免部署,也就意味著不需要安裝即可使用,但是需要同樣也需要數(shù)據(jù)庫(kù)客戶端管理軟件的支持,SQLite的客戶端軟件很多,包含SQLiteDatabaseBrowser、SQLiteAdministrator、SQLiteExpertPersonal、SQLiteStudio等,個(gè)人比較喜歡使用SQLiteStudio,需要的童鞋可以關(guān)注本公眾號(hào),在后臺(tái)發(fā)送關(guān)鍵詞

015

即可獲取。為了后續(xù)介紹SQLite數(shù)據(jù)應(yīng)用,首先要準(zhǔn)備好一個(gè)數(shù)據(jù)庫(kù)及數(shù)據(jù)表,通過(guò)SQLite可以很方便的進(jìn)行創(chuàng)建,創(chuàng)建完成后會(huì)生成一個(gè)文件。如上圖所示,創(chuàng)建了一個(gè)SQLite數(shù)據(jù)庫(kù),名稱為SQLiteDemo,在數(shù)據(jù)庫(kù)中創(chuàng)建了一個(gè)數(shù)據(jù)表,名稱為Student,Student數(shù)據(jù)表下會(huì)有四個(gè)字段,分別為StudentID、StudentName、StudentGender及StudentClass,并向其中插入了兩條數(shù)據(jù)。2數(shù)據(jù)庫(kù)應(yīng)用首先創(chuàng)建一個(gè)Windows應(yīng)用程序,窗體中簡(jiǎn)單的拖放兩個(gè)控件,一個(gè)查詢按鈕,一個(gè)顯示控件DataGridView,我們所要做的就是基于SQLite數(shù)據(jù)庫(kù)實(shí)現(xiàn)數(shù)據(jù)的查詢。如下圖所示:眾所周知,Windows開(kāi)發(fā)會(huì)存在平臺(tái)版本的問(wèn)題,一般情況下,我們使用的都是AnyCPU,AnyCPU默認(rèn)是32位目標(biāo)平臺(tái),但是有的時(shí)候我們可能需要在64位平臺(tái)上使用SQLite,今天著重講述一下如何在各個(gè)平臺(tái)下實(shí)現(xiàn)SQLite的應(yīng)用。2.1默認(rèn)AnyCPU一般情況下,我們的項(xiàng)目都是使用AnyCPU作為目標(biāo)平臺(tái),默認(rèn)為32位。如果想實(shí)現(xiàn)SQLite數(shù)據(jù)庫(kù)應(yīng)用,首先要準(zhǔn)備一些類庫(kù),因?yàn)镾QLite并不是微軟的數(shù)據(jù)庫(kù),所以Windows系統(tǒng)是沒(méi)有SQLite類庫(kù)的,SQLite類庫(kù)會(huì)區(qū)分32位和64位,類庫(kù)獲取方式,公眾號(hào)后臺(tái)回復(fù):261

,如下圖所示:首先將公用的類庫(kù)復(fù)制到Debug根目錄下,然后手動(dòng)添加下SQLiteHelper,SQLiteHelper是一個(gè)封裝好的SQLite數(shù)據(jù)庫(kù)操作類,如下圖所示,添加之后,會(huì)有錯(cuò)誤提示,將System.Data.SQLite.dll添加引用即可消除錯(cuò)誤。設(shè)置連接字符串:SQLite連接字符串指向的是數(shù)據(jù)庫(kù)文件,所以這里首先要之前創(chuàng)建好的數(shù)據(jù)文件復(fù)制到項(xiàng)目中來(lái),直接放到Debug路徑下,然后在窗體運(yùn)行初始化時(shí),設(shè)置一下連接字符串,連接字符串格式如下:在查詢按鈕下,寫(xiě)一段簡(jiǎn)單的查詢代碼,如下圖所示:運(yùn)行程序,執(zhí)行查詢事件,代碼會(huì)報(bào)錯(cuò),如下圖所示:這個(gè)錯(cuò)誤,很多童鞋經(jīng)常會(huì)遇到,錯(cuò)誤提示很明顯,就是提示缺少指定模塊,模塊名稱為SQLite.Interop.dll,如果大家還有印象的話,這個(gè)dll是在SQLite類庫(kù)中,32位和64位專有的文件夾中,如下圖所示,因此,我們只需要將x86文件夾下的這兩個(gè)文件復(fù)制到Debug目錄下,這里一定要復(fù)制x86文件夾下的,因?yàn)锳nyCPU默認(rèn)是x86平臺(tái)。復(fù)制完成后,再次點(diǎn)擊查詢,結(jié)果如下:2.264位平臺(tái)當(dāng)我們使用64位平臺(tái)時(shí),首先將目標(biāo)平臺(tái)改成x64,如下圖所示:這時(shí)候,運(yùn)行界面,點(diǎn)擊查詢,會(huì)出現(xiàn)以下錯(cuò)誤:對(duì)于這個(gè)錯(cuò)誤,我們將x64文件夾下的兩個(gè)文件復(fù)制到Debug目錄下,然后替換一下,再執(zhí)行查詢,實(shí)現(xiàn)最終的數(shù)據(jù)讀?。寒?dāng)我們同時(shí)將下圖中的目標(biāo)平臺(tái)修改為x64時(shí),再重新生成,會(huì)在bin文件夾下重新產(chǎn)生一個(gè)x64的文件夾,這時(shí)候所有的生成內(nèi)容都將存儲(chǔ)在x64文件夾下,與之前的Debug無(wú)關(guān)。這時(shí)候再重新生成,運(yùn)行界面,點(diǎn)擊查詢,又會(huì)出現(xiàn)下面的錯(cuò)誤:再次遇到這樣的問(wèn)題,我們應(yīng)該很清楚,就是需要將只需要將類庫(kù)中x64文件夾下的這兩個(gè)文件復(fù)制到Bin目錄下x64文件夾下的Debug文件夾中,同時(shí)還需要將數(shù)據(jù)庫(kù)復(fù)制進(jìn)去。重新生成,點(diǎn)擊查詢,結(jié)果如下:2.3x86平臺(tái)當(dāng)我們將下圖中的目標(biāo)平臺(tái)修改為x86時(shí),再重新生成,同理會(huì)在bin文件夾下重新產(chǎn)生一個(gè)x86的文件夾,這時(shí)候所有的生成內(nèi)容都將存儲(chǔ)在x86文件夾下,與之前的Debug無(wú)關(guān),這里的解決方案與上述2.2描述類似,因此不再作贅述。3整體總結(jié)通過(guò)針對(duì)各個(gè)平臺(tái)的說(shuō)明,我們發(fā)現(xiàn)SQLite使用中常見(jiàn)的錯(cuò)誤無(wú)非就那么幾種,而解決方案也是差不多,始終需要遵

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論