C/C++ SQLite 之基礎篇

來源:互聯網
上載者:User

文章目錄:

                 

1. 下載 SQLite3 源碼:

2. 下載 SQLite3.DLL 檔案:

3. 產生 SQLite3.lib 檔案 :

4. 產生或者下載 SQLite3 Shell 檔案 :

5. 建立資料庫以及資料表:

6. 總結:

                

1. 下載 SQLite3 源碼:

                         

雖然說擺弄 c/c++ 有很長時間了,但是說到用 c/c++ 來擺弄資料庫倒還真是沒有弄過,

一直有關資料庫的項目似乎都用 .Net 給去 OK 了,就好比 SQLite,

現在的項目就是用的 SQLite.Net,有什麼東西都是用 c# 直接操作 SQLite.Net 了,

而相對底層的東西則使用 c/c++ 完成且封裝成 DLL 供 c# 調用就 OK 了。

不過有的時候自己在寫一些小東西的時候,可能也會有些資料需要本機存放區的,

以前為了圖個簡單,就直接存檔案咯,不過要是相對隱私點的東西的話,

我想還是有個資料庫比較好,這不是就有 SQLite3 了嘛,注意一下哈,

SQLite3 是供 c/c++ 代碼來使用的,如果是 .Net 的話那就得用 SQLite.Net 了,

                                        

廢話少說,進入正題了,首先我們需要下載好 SQLite3 的相關檔案,

官網地址:http://www.sqlite.org/download.html

                                       

我們先下載的是 SQLite3 的源碼,下載好後,你可以解壓縮出來,然後你就會看到 4 個 C/C++ 檔案了。

而我們每次在 C/C++ 中使用 SQLite3 時總是需要其中的標頭檔 sqlite3.h

                                

                                

2. 下載 SQLite3.dll:

                                

然後需要下載的是 SQLite3 的 DLL 檔案以及匯出庫,

下載完後你可以解壓出來,你會發現只有 SQLite3.dll 和 SQLite3.def 兩個檔案,

                                

                                

3. 產生 SQLite3.lib 檔案:

                                

做過 c/c++ DLL 的都知道,.def 檔案可以用來定義一個 DLL 中 API 的匯出,

所以我們可以開啟 SQLite3.def 看看,裡面定義的 API 名稱就是 SQLite3.dll 所匯出的 API,

而在 C/C++ 中如果你要連結到其他的 DLL 上,你必須要有那個 DLL 的匯出庫,也就是 .lib 檔案,

而我們這裡沒有匯出檔案(Lib)怎麼辦呢?沒有那就根據 DLL 和.def 檔案來產生一個 .lib 檔案不就 OK 了 ~

首先將 SQLite3.dll 和 SQLite3.def 檔案拷貝到 VS 安裝目錄下的 Bin 檔案夾,

比如我安裝的是 VS2010,且預設安裝在 C:\Program Files\ 目錄下面,

那麼你就需要將上面的兩個檔案拷貝到以下目錄:

C:\Program Files\Microsoft Visual Studio 10.0\VC\bin

然後開啟 Visual Studio 命令提示字元,且定位到上面的這個目錄,

然後輸入命令:lib /def:sqlite3.def /machine:ix86

然後你就會在 Bin 目錄下發現已經產生了 SQLite3.lib 檔案。

                                

                                

4. 產生或下載 SQLite3 Shell 檔案:

                                

關於這 SQLite3 的 Shell 檔案呢,就是用來建立 SQLite3 資料庫啊,建立表啊之類的東西,

說白了就是個 SQLite Admin 的控制台介面,當然咯,控制台這個東西並不怎麼好用,

所以你可以考慮換個其他的帶 GUI 的工具來管理你的 SQLite3 資料庫。

有個工具不錯,叫 DataBase.Net,什麼亂七八糟的資料庫它都可以串連上去,不過要 .Net Framework 的支援。

對於這個 SQLite3 的 Shell 檔案你可以直接在 SQLite 的官方網站上下載到,

                                

而後,除了下載 SQLite3 的 Shell 工具外,我們還可以自己編譯 SQLite 原始碼來產生這個工具,

前面我們已經下載好了 SQLite3 的原始碼,並且原始碼裡面還有一個叫做 shell.c 的檔案,

其實這個檔案就可以用來處理 SQLite3 Shell 命令的,

所以我們可以直接在 VS2010 下建立一個 Console 項目,

然後將原始碼裡面的 4 個 C\C++ 檔案拷貝到項目中,然後直接編譯,

你也可以得到 SQLite3 的 Shell 工具 SQLite3.exe。

                                

                                                

5. 建立資料庫以及資料表:

                                                

這裡使用麻煩點的方式,即使用 SQLite3 的 Shell 工具,

下面的例子呢就是很簡單的方式,即使用 SQLite3 的 Shell 工具來建立個 DataBase,

然後再建立個 Table,再插入幾條記錄,查詢一下就 OK 了。

具體命令就看下面的就好了:

首先在命令列下定位到你的 SQLite3.exe 也就是 Shell 程式所在的目錄:

比如我的 SQLite3.exe 所在目錄為:

E:\Code\SQLite\sqlite-shell-win32-x86-3071000

                                                

然後輸入命令 sqlite3 testDB.db 從而建立 SQLite 資料庫,

                                                

然後輸入命令 create table testDB_ID(ID int, Number int) 來建立資料表 testDB_ID

然後輸入命令 ; 從而執行上面的建立表的命令。

                                                

執行完這些命令後,在你的 Shell 程式也就是 SQLite3.exe 所在的位置中發現你建立的 testDB.db 資料庫了。

                                                

其實上面的這種建立資料庫的方式太麻煩了,還不如直接用 Database.Net 來做,方便很多,

比如我用 DataBase.Net 開啟我們上面建立的這個 testDB.db 資料庫,用這個工具來管理資料庫很方便。

                                                

                                                

6. 小結:

                                                

好,這篇博文到這裡就完了,話說回來上面的文章還真沒有講到什麼有用的東西,

僅僅是一些關於 SQLite 的環境啊之類的流水賬記錄。

僅僅是對於那些沒有操作過 SQLite3 的小白可能還有點作用,

當然咯,我也還是個小白,所以才做這個文章做個記錄。

下面的篇章就要來寫寫在 C\C++ 下面對 SQLite 的一些具體的操作了。

                                    

           

著作權,迎轉載,但轉載請註明: 轉載自  Zachary.XiaoZhen - 夢想的天空

            

          

   

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.