1 安装
去sqlite主页http://www.sqlite.org/.跳转到下载也http://www.sqlite.org/download.html。源码下载sqlite-amalgamation-3.7.3.tar.gz
我去的时候是3.7.3版现在估计升级了。
进入下载目录,解压文件tar -zxvf sqlite-amalgamation-3.7.3.tar.gz.
解压后生成sqlite-3.7.3目录. cd 进入sqlite-3.7.3。
./configure
make
sudo make install
安装完成。
2测试
在任意目录下新建一个数据库,比如student ,
命令: sqlite3 student
出现如下提示:
SQLite version 3.7.2
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>
输入.help可以看到命令列表。
输入sql语句create table user(username text primary key, password text); 建一张user表
输入sql语句insert into user values("tianyou121", "123"); 插入一个用户。
输入sql语句select * from user; 可以查看user表.
输入sql命令是记得结尾的';'号。
可以输入如下程序测试数据库:
1 #include <stdio.h>
2 #include <stdlib.h>
3
4 #include <sqlite3.h>
5
6 int myfunc(void *p, int argc, char **argv, char **argvv)
7 {
8 int i;
9 *(int *)p = 0;
10 for(i =0; i < argc; i++)
11 {
12 printf("%s = %s ", argvv[i], argv[i] ? argv[i] :"NULL");
13 }
14 putchar('/n');
15 return 0;
16 }
17
18 int main(int argc, char *argv[])
19 {
20 sqlite3 *db;
21 char *err =0;
22 int ret =0;
23 int empty =1;
24
25 ret = sqlite3_open("student",&db);
26 if(ret !=SQLITE_OK)
27 {
28 fputs("/n",stderr);
29 exit(1);
30 }
31 ret = sqlite3_exec(db, "select * from user;", myfunc, &empty, &err);
32
33 if(ret != SQLITE_OK)
34 {
35 fputs(err,stderr);
36 fputs("/n",stderr);
37 sqlite3_close(db);
38 exit(1);
39 }
40
41 if(empty)
42 {
43 fputs("table student is empty/n", stderr);
44 exit(1);
45 }
46
47 sqlite3_close(db);
48
49 return 0;
50 }
保存文件为sqlite3_t.c和数据库文件放在一个目录下。
用gcc 编译:gcc -o sqlite_t sqlite3_t.c -lsqlite3
记得加上-lsqlite3指定库文件,否则编译不通。
./sqlite_t
可以看到user表中用户信息。