標籤: sqlite3,linux
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
tarxvzf 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 ../../sqlite_arm
//開啟檔案
cd ../../sqlite-3.6.17
//配置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來驅動它。
static int callback(void *notused, int argc, char **argv, char **azcolname)
printf("/n");
return 0;
}
int main(int argc, char **argv)
rc = sqlite3_open(argv[1], &db);
if( rc )
rc = sqlite3_exec(db, argv[2], callback, 0, &zerrmsg);
if( rc!=sqlite_ok )
sqlite3_close(db);
return 0;
}上面的**是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移植手記
前幾天成功地把berkeley db移植到uclinux上,雖然可以正常工作了,但是檔案還是太大了些。今天來試乙個稍微小一點的,它叫sqlite。sqlite實現了大部分sql92標準的sql語句,同時支援acid。還有其它許多特性這裡不做深究,因為這在嵌入式領域來說應該是夠用了。hily jian...
SQLite移植手記1
sqlite實現了大部分sql92標準的sql語句,同時支援acid。還有其它許多特性這裡不做深究,因為這在嵌入式領域來說應該是夠用了。我使用的還是當前最新版本 sqlite 3.3.7.tar.gz 寫完的時候已經更新出3.3.8版本了,真快啊 安裝 時間不多,簡單介紹安裝過程 解壓sqlite到...
sqlite移植到arm(一)
虛擬機器 redhat 5 arm linux gcc 3.4.6 專案需要 這個社群看看有沒有。2 將tar包放在虛擬機器的 opt下,解壓,並在同級目錄下建立build資料夾,用來放之後產生的四個包。3 進入解壓後的資料夾,執行 4 之後執行 5 最後執行 這個時候,你剛才建立的build資料夾...