在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

SQLite數據庫多平臺應用及常見錯誤分析有哪些

汽車電子技術 ? 來源:dotNet工控上位機 ? 作者:新閣教育-付工 ? 2023-02-22 15:25 ? 次閱讀

SQLite是一個軟件庫,實現了自給自足的、無服務器的、零配置的、事務性的SQL數據庫引擎。SQLite是世界上最廣泛部署的數據庫引擎之一。SQLite源代碼開放,沒有授權限制。正是因為其免費、輕巧、綠色等特點,因此SQLite的應用范圍很廣,在各種軟件上都有應用,其中不乏Adobe、Apple、Firefox,甚至包括google、Microsoft、SUN這樣的企業。在上位機項目開發中。SQLite的應用也很廣泛,今天主要跟大家分享一下SQLite的部署、應用及常見錯誤分析。

圖片

1 數據庫部署

SQLite數據庫和其他數據庫相比,一個很大的優勢在于免部署,也就意味著不需要安裝即可使用,但是需要同樣也需要數據庫客戶端管理軟件的支持,SQLite的客戶端軟件很多,包含SQLite Database Browser、SQLite Administrator、SQLite Expert Personal、SQLite Studio等,個人比較喜歡使用SQLite Studio,需要的童鞋可以關注本公眾號,在后臺發送關鍵詞 **015 **即可獲取。為了后續介紹SQLite數據應用,首先要準備好一個數據庫及數據表,通過SQLite可以很方便的進行創建,創建完成后會生成一個文件。

圖片

如上圖所示,創建了一個SQLite數據庫,名稱為SQLiteDemo,在數據庫中創建了一個數據表,名稱為Student,Student數據表下會有四個字段,分別為StudentID、StudentName、StudentGender及StudentClass,并向其中插入了兩條數據。

2 數據庫應用

首先創建一個Windows應用程序,窗體中簡單的拖放兩個控件,一個查詢按鈕,一個顯示控件DataGridView,我們所要做的就是基于SQLite數據庫實現數據的查詢。如下圖所示:

圖片

眾所周知,Windows開發會存在平臺版本的問題,一般情況下,我們使用的都是Any CPU,Any CPU默認是32位目標平臺,但是有的時候我們可能需要在64位平臺上使用SQLite,今天著重講述一下如何在各個平臺下實現SQLite的應用。

2.1 默認Any CPU

一般情況下,我們的項目都是使用Any CPU作為目標平臺,默認為32位。如果想實現SQLite數據庫應用,首先要準備一些類庫,因為SQLite并不是微軟的數據庫,所以Windows系統是沒有SQLite類庫的,SQLite類庫會區分32位和64位,類庫獲取方式,公眾號后臺回復: **261 ** ,如下圖所示:

圖片

  • 首先將公用的類庫復制到Debug根目錄下,然后手動添加下SQLiteHelper,SQLiteHelper是一個封裝好的SQLite數據庫操作類,如下圖所示,添加之后,會有錯誤提示,將System.Data.SQLite.dll添加引用即可消除錯誤。

圖片

  • 設置連接字符串:SQLite連接字符串指向的是數據庫文件,所以這里首先要之前創建好的數據文件復制到項目中來,直接放到Debug路徑下,然后在窗體運行初始化時,設置一下連接字符串,連接字符串格式如下:

圖片

  • 在查詢按鈕下,寫一段簡單的查詢代碼,如下圖所示:

圖片

  • 運行程序,執行查詢事件,代碼會報錯,如下圖所示:

圖片

這個錯誤,很多童鞋經常會遇到,錯誤提示很明顯,就是提示缺少指定模塊,模塊名稱為SQLite.Interop.dll,如果大家還有印象的話,這個dll是在SQLite類庫中,32位和64位專有的文件夾中,如下圖所示,因此,我們只需要將x86文件夾下的這兩個文件復制到Debug目錄下,這里一定要復制x86文件夾下的,因為Any CPU默認是x86平臺。

圖片

  • 復制完成后,再次點擊查詢,結果如下:

圖片

2.2 64位平臺

當我們使用64位平臺時,首先將目標平臺改成x64,如下圖所示:

圖片

這時候,運行界面,點擊查詢,會出現以下錯誤:

圖片

對于這個錯誤,我們將x64文件夾下的兩個文件復制到Debug目錄下,然后替換一下,再執行查詢,實現最終的數據讀取:

圖片

當我們同時將下圖中的目標平臺修改為x64時,再重新生成,會在bin文件夾下重新產生一個x64的文件夾,這時候所有的生成內容都將存儲在x64文件夾下,與之前的Debug無關。

圖片

圖片這時候再重新生成,運行界面,點擊查詢,又會出現下面的錯誤:

圖片

再次遇到這樣的問題,我們應該很清楚,就是需要將只需要將類庫中x64文件夾下的這兩個文件復制到Bin目錄下x64文件夾下的Debug文件夾中,同時還需要將數據庫復制進去。重新生成,點擊查詢,結果如下:

圖片

2.3 x86平臺

當我們將下圖中的目標平臺修改為x86時,再重新生成,同理會在bin文件夾下重新產生一個x86的文件夾,這時候所有的生成內容都將存儲在x86文件夾下,與之前的Debug無關,這里的解決方案與上述2.2描述類似,因此不再作贅述。

圖片

3 整體總結

通過針對各個平臺的說明,我們發現SQLite使用中常見的錯誤無非就那么幾種,而解決方案也是差不多,始終需要遵從一個原則,保證我們需要的第三方dll放在項目生成的路徑下。當我們不清楚項目生成的路徑時,可以通過清理解決方案,再重新生成解決方案,觀察項目exe的修改時間,是否為當前最新的時間,從而判斷該路徑是否為項目生成路徑。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • SQL數據庫
    +關注

    關注

    0

    文章

    25

    瀏覽量

    6915
  • SQlite
    +關注

    關注

    0

    文章

    78

    瀏覽量

    15945
  • 軟件庫
    +關注

    關注

    0

    文章

    15

    瀏覽量

    7766
收藏 人收藏

    評論

    相關推薦

    玩轉SQLite5:使用Python來讀寫數據庫

    本篇介紹了如何使用**Python**語言來進行SQLite數據庫的讀寫,在嵌入式式開發中,更多的是使用**C/C++**語言進行開發,因此,下篇我們介紹如何使用C語言來進行SQLite數據庫
    的頭像 發表于 09-25 08:51 ?1853次閱讀
    玩轉<b class='flag-5'>SQLite</b>5:使用Python來讀寫<b class='flag-5'>數據庫</b>

    Wince系統基于數據庫Sqlite的應用

    覺得有點象,但是事實上它們區別很大。比如SQLite 支持跨平臺,操作簡單,能夠使用很多語言直接創建數據庫,而不象Access一樣需要Office的支持。如果你是個很小型的應用,或者你想做嵌入式開發
    發表于 07-18 11:31

    關于Lv與Sqlite數據庫的通信

    大神做過Lv與Sqlite數據庫的通信嗎?謝謝了
    發表于 06-22 22:01

    LabVIEW訪問SQLite數據庫接口研究

    【摘要】 本文介紹了LabVIEW環境下利用API技術訪問開源數據庫SQLite的方法,實現了可跨平臺操作的數據庫。采用此種方法完成了對過程控制中歷史
    發表于 02-04 13:38

    嵌入式數據庫Sqlite移植教程

    嵌入式數據庫Sqlite移植教程 sqlite-3.3.6編譯安裝與交叉編譯全過程詳細記錄
    發表于 03-11 09:57 ?3719次閱讀

    SQLite嵌入式數據庫在Wince中的應用實例

    隨著科學技術的發展,嵌入式系統成為了科技發展的主要領域, Linus和Wince是比較常見的嵌入式系統。嵌入式開發過程離不開數據庫的應用,對于嵌入式數據庫的選擇是必要的。通常,嵌入式系統選擇的
    發表于 10-23 16:05 ?0次下載
    <b class='flag-5'>SQLite</b>嵌入式<b class='flag-5'>數據庫</b>在Wince中的應用實例

    怎么創建SQLite數據庫

    大家好,今天給大家分享一篇如何創建SQLite數據庫的文章。
    的頭像 發表于 02-22 16:21 ?6022次閱讀
    怎么創建<b class='flag-5'>SQLite</b><b class='flag-5'>數據庫</b>

    SQLite數據庫的特點 SQLite數據庫簡單介紹

    SQLite數據庫的特點 SQLite數據庫簡單介紹 SQLite數據庫是一種輕型的嵌入式
    的頭像 發表于 08-28 16:40 ?5533次閱讀

    如何創建一個Sqlite數據庫

    如何創建一個Sqlite數據庫Sqlite是一種輕量級、占用空間小、操作速度快的嵌入式數據庫,使用它可以方便地存儲和管理數據
    的頭像 發表于 08-28 16:40 ?4464次閱讀

    什么是Sqlite數據庫

    立。Sqlite數據庫的特點是占用空間小、運行速度快、使用簡單等。Sqlite數據庫被廣泛應用于各種移動設備、嵌入式設備和桌面應用程序中。本文將詳細介紹
    的頭像 發表于 08-28 16:41 ?2573次閱讀

    SQLite數據庫能加密嗎

    SQLite數據庫能加密嗎? SQLite是一種以文件為基礎的輕量級數據庫管理系統,它被廣泛應用在許多領域,例如移動設備應用程序、桌面應用程序、網絡瀏覽器、機器人和嵌入式系統等。在許多
    的頭像 發表于 08-28 16:41 ?3959次閱讀

    SQLite數據庫能共享嗎?

    個人電腦或移動設備上的單個用戶。但是,SQLite數據庫實際上是可以在多用戶環境中使用的,只要它被正確地配置和管理。 在SQLite中,多用戶共享數據庫
    的頭像 發表于 08-28 16:41 ?2641次閱讀

    SQLite數據庫與python的區別

    數據科學等方面。SQLite數據庫和Python之間很多不同之處,下面將詳細解析它們之間的區別。 1. 數據庫類型
    的頭像 發表于 08-28 16:41 ?867次閱讀

    SQLite數據庫增刪改查

    SQLite數據庫增刪改查? SQLite是一種輕量級的RDBMS(關系型數據庫管理系統),具有速度快、易用性高等優點。雖然SQLite
    的頭像 發表于 08-28 17:09 ?1209次閱讀

    SQLite數據庫文件頭部特征

    SQLite數據庫文件頭部特征 SQLite是一種輕量級關系型數據庫管理系統,被廣泛應用于移動設備、桌面應用程序和Web應用程序中。SQLite
    的頭像 發表于 08-28 17:15 ?1068次閱讀
    主站蜘蛛池模板: 婷婷综合久久| 看免费黄色大片| 国产一级做a爰片久久毛片| 天天插天天爱| 中文字幕一区二区三区四区五区人| 亚洲伊人久久大香线蕉啊| 女人张开腿让男人做爽爽| 天天爽夜夜爽人人爽免费| 在线二区| 欧美色操| 热久久影院| 伊人毛片| 国产网站在线| 日韩性xxx| 日韩在线视频一区| 天天在线影院| 乱说欲小说又粗又长| 久久男人精品| 加勒比在线视频| 性欧美大胆高清视频| ts人妖系列在线专区| 免费啪视频| 日本大黄视频| 欧美性猛片xxxxⅹ免费| 在线播放黄色| www天堂网| 深点再深一点好爽好多水| 美脚连裤袜老师正在播放| 国产天天在线| 色婷婷激婷婷深爱五月小说| 新版天堂中文资源8在线| 午夜国产精品久久久久| 久久mimi色| 欧美另类色| 免费一级在线观看| 99久久久精品免费观看国产| 色日本视频| 两人性潮高免费视频看| 婷婷色天使在线视频观看| 天天射狠狠干| 性色综合|