sqlite基础配置
1.源代码的获取 sqlite是一个功能强大、体积小运算速度快的嵌入式数据库,采用了全C语言封装,并提供了八十多个命令接口,可移植性强,使用方便。 下载地址:http://sqlite.org/download.html 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) { int i; for(i=0; i<argc; i++) { printf("%s = %s/n",azColName[i],argv[i] ? argv[i] : "NULL"); } 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,&zErrMsg); if( rc!=SQLITE_OK ) { fprintf(stderr,"SQL error: %s/n",zErrMsg); } 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;" (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |