make install
編譯和安裝完後,在 /root/sqlite-3.6.22/build/target 目錄中會生成三個目標文件夾,分別是: bin 、 include 、 lib ,然後分別將 bin 下的文件下載到開發板的 /usr/bin 目錄中, lib 下的所有文件下載到開發板的 /usr/lib 目錄中即可。 include 目錄下是 sqlite 的 C 語言 API 的頭文件,編程時會用到。
5. 在開發板上測試移植的 sqlite 數據庫。登錄開發板的 Linux ,執行:
sqlite3 demo.db
sqlite3 是一個 sqlite 的命令行訪問程序, demo.db 是新建的數據庫的名字,必須以 db 作後綴。然後會看到下面的畫面,說明移植成功。
三、測試
1 、新建數據庫
[rootMrFeng]#sqlite3 test.db
SQLite version 3.6.18
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> create table film (number,name);
sqlite> insert into film values (1,'aaa');
sqlite> insert into film values (2,'bbb');
sqlite> select * from film;
1|aaa
2|bbb
sqlite>.quit
[rootMrFeng]#
藍色部分爲輸入。
2 、測試程序
這裏以SQLite
官方站點http://sqlite.org
的quick start
文檔中的測試程序爲例對移植到ARM
-Linux 上的SQLite3
進行測試。該程序清單如下:
//test_sqlite.c
#include <stdlib.h>
#include <stdio.h>
#include <sqlite3.h>
static int callback(void *NotUsed, int argc, char **argv, char **azColName)
{
int i;
for(i=0; i<argc;i++)
{
printf("%s = %s/n", azColName[i], argv [i]);
}
printf("/n");
return 0;
}
int main(int argc, char **argv)
{
sqlite3 *db;
char *zErrMsg = 0;
int rc;
if( argc!=3 )
{
fprintf(stderr, "Usage: %s DATABASE SQL-STATEMENT/n", argv[0]);
}
rc = sqlite3_open(argv[1], &db);
if( rc )
{
fprintf(stderr, "Can't open database: %s/n", sqlite3_errmsg(db));
sqlite3_close(db);
}
rc = sqlite3_exec(db, argv[2], callback, 0, &zErrMsg);
if( rc!=SQLITE_OK )
{
fprintf(stderr, "SQL error: %s/n", zErrMsg);
}
sqlite3_close(db);
return 0;
}
使用如下命令編譯測試程序:
交叉編譯時採用arm-linux-gcc -I /…… (安裝路徑)/include -L/……( 安裝路徑)/lib -o target src -lsqlite3
arm-linux-gcc -o test_sqlite test_sqlite.c -lsqlite3 -L /opt/FriendlyARM/mini2440/sqlite-3.7.3/build/lib/ -I /opt/FriendlyARM/mini2440/sqlite-3.7.3/build/include/
3 、在上面新建的數據庫目錄下測試:
[rootMrFeng]#./test_sqlite test.db "select * from film"
number = 1
name = aaa
number = 2
name = bbb
[rootMrFeng]#
1)
創建數據庫文件:
>SQLite3 test.db 回車
就生成了一個test.db在d盤。
這樣同時也SQLite3掛上了這個test.db
2)
用.help可以看看有什麼命令
>.help 回車即可
3)可以在這裏直接輸入SQL語句創建表格 用;結束,然後回車就可以看到了
4)看看有創建了多少表
>.tables
5)看錶結構
>.schema 表名
6)看看目前掛的數據庫
>.database
7)如果要把查詢輸出到文件
>.output 文件名
> 查詢語句;
查詢結果就輸出到了文件c:/query.txt
把查詢結果用屏幕輸出
>.output stdout
8)把表結構輸出,同時索引也會輸出
.dump 表名
9)退出
>.exit 或者.quit