Sqlite 嵌入式資料庫移植和使用

2021-09-08 23:50:24 字數 2498 閱讀 3111

1.    源**的獲取

sqlite是乙個功能強大、體積小運算速度快的嵌入式資料庫,採用了全c語言封裝,並提供了八十多個命令介面,可移植性強,使用方便。

sqlite源**:sqlite-3.6.17.tar.gz

2.    sqlite移植到x86 for linux

l    解壓檔案

//建立乙個資料夾,將源**放在這個資料夾中。

mkdir /work/sqlite

cp sqlite-3.6.17.tar.gz /work/sqlite

//解壓檔案

cd /work/sqlite

tar xvzf sqlite-3.6.17.tar.gz

l    配置

//建立x86目錄

mkdir sqlite_x86

//開啟檔案

cd sqlite-3.6.17

//配置sqlite

./configure --prefix=/work/sqlite/sqlite_x86 --disable-tcl

l    編譯

make

l    安裝

make install

l    測試

當安裝完成以後,安裝檔案會安裝在/work/sqlite/sqlite_x86目錄中,一種產生了,lib,include和bin三個資料夾,分別是庫檔案,標頭檔案和可執行檔案。

到這裡是不是有點躍躍欲試了,是的,我們可以測試sqlite了,當檔案安裝後,我們可以直接通過安裝好的sqlite3來實現。

cd sqlite_x86/bin

./sqlite3 test.db //開啟或建立test.db資料庫檔案

create table test (id integer primary key, value text); 

insert into test (value) values('hxl'); 

insert into test (value) values('sqlite'); 

insert into test (value) values('test'); 

insert into test (value) values('for'); 

insert into test (value) values('linux'); 

//到此資料庫基本家裡就完成了,來看看資料庫裡面的檔案吧

.mode col

.headers on //列印出資料庫的表頭

select * from test; //顯示資料庫中的所有檔案

.exit //退出

3.    sqlite移植到arm

l    配置

//建立x86目錄

mkdir

//開啟檔案

cd //配置sqlite

./configure --prefix=/work/sqlite/sqlite_arm --disable-tcl —host=arm-linux

l    編譯

make

l    安裝

make install

l    測試

當安裝完成以後,安裝檔案會安裝在/work/sqlite/sqlite_x86目錄中,一種產生了,lib,include和bin三個資料夾,分別是庫檔案,標頭檔案和可執行檔案。

將lib中的檔案複製到開發板的lib中,現在編寫乙個c檔案test.c來驅動它。

#include 

#include

static

int callback(void *notused, int argc, char **ar**, char **azcolname)

printf("\n

");return0;

} int main(int argc, char **ar**)

rc = sqlite3_open(ar**[1], &db);

if( rc )

rc = sqlite3_exec(db, ar**[2], callback, 0, &zerrmsg);

if( rc!=sqlite_ok )

sqlite3_close(db);

return0;

}

非嵌入式下編譯:

gcc -g test.c -o test -lsqlite3

上面的**是sqlite官方的測試**,雖然很簡單但是也很強大,一般應用都夠了,再了解一下sqlite的語法就可以實現強大的功能了,編譯方法如下,在這裡假設你已經安裝好了arm-linux-gcc,我採用的是arm-linux-gcc-4.3.2,編譯方法如下:

arm-linux-gcc -o test test.c -sqlite3 -l/work/sqlite/sqlite_arm/lib -i/work/sqlite/sqlite_arm/include

將資料庫複製在當前資料夾,測試方法:

./test ./test test.db "select * from test;"

Sqlite 嵌入式資料庫移植和使用

1.源 的獲取 sqlite是乙個功能強大 體積小運算速度快的嵌入式資料庫,採用了全c語言封裝,並提供了八十多個命令介面,可移植性強,使用方便。sqlite源 sqlite 3.6.17.tar.gz 2.sqlite移植到x86 for linux l解壓檔案 建立乙個資料夾,將源 放在這個資料夾...

嵌入式資料庫sqlite

自虛擬神話 也許往往大家是不需要像mysql sqlserver這類在複雜的資料庫,那麼sqlite 值得你去嘗試下!什麼是 sqlite sqlite 是一款輕量級的 基於檔案的嵌入式資料庫,2000年就已經誕生,經過多年的發展,直到今天已經成為最流行的,包括google在內的公司在其桌面軟體中亦...

嵌入式資料庫sqlite

自虛擬神話 也許往往大家是不需要像mysql sqlserver這類在複雜的資料庫,那麼sqlite值得你去嘗試下!什麼是 sqlite sqlite 是一款輕量級的 基於檔案的嵌入式資料庫,2000年就已經誕生,經過多年的發展,直到今天已經成為最流行的,包括google在內的公司在其桌面軟體中亦使...