redhat 9 下sqlite 3的安装及编程
2014年11月5日16:38:43
1、将sqlite-amalgamation-3.7.3.tar.gz上传到/home/encoder目录.
2、解压:tar -zxvf sqlite-amalgamation-3.7.3.tar.gz
3、进入目录:cd sqlite-3.7.3/
4、安装:
./configure
make
make install
ldconfig
5、运行sqlite3 student命令,创建一个数据库。在该命令下执行以下命令:
//建表
create table user(username text primary key, password text);
//插数据
insert into user values("tianyou121", "123");
//查表
select * from user;
//退出
.quit
6、编程:
源代码:
#include <stdio.h>
#include <stdlib.h>
#include <sqlite3.h>
int myfunc(void *p, int argc, char **argv, char **argvv)
{
int i;
*(int *)p = 0;
for(i =0; i < argc; i++)
{
printf("%s = %s ", argvv[i], argv[i] ? argv[i] :"NULL");
}
putchar('/n');
return 0;
}
int main(int argc, char *argv[])
{
sqlite3 *db;
char *err =0;
int ret =0;
int empty =1;
ret = sqlite3_open("student",&db);
if(ret !=SQLITE_OK)
{
fputs("/n",stderr);
exit(1);
}
ret = sqlite3_exec(db, "select * from user;", myfunc, &empty, &err);
if(ret != SQLITE_OK)
{
fputs(err,stderr);
fputs("/n",stderr);
sqlite3_close(db);
exit(1);
}
if(empty)
{
fputs("table student is empty/n", stderr);
exit(1);
}
sqlite3_close(db);
return 0;
}
编译:
gcc -o sqlite_t sqlite3_t.c -lsqlite3
//插入语句
ret = sqlite3_exec(db, "insert into user11 values(\"tianyou123456789\", \"123456789\");", myfunc, &empty, &err);
//修改表名.
sqlite> ALTER TABLE ETCBlackList32 RENAME TO ETCBlackList3201;
//查找所有表.
sqlite> SELECT name FROM sqlite_master WHERE type='table';