1-- 安装sqlite3 数据库
sudo dpkg -i *.deb
2-- 系统命令,以‘.’开头
.exit 退出
.help 帮助
.quit 退出
.schema 查看数据库的结构
.table 列出数据库中所有的表名
3-- 基本sql 语句 命令,以‘;’结尾
创建数据库表
create table stu(id int , name char, sex char, age int);
插入一条记录
insert into stu values(1001, 'zhangsan', 'm', 20);
insert into stu (id, name, sex) values(1002, 'lisi', 'm');
查询数据库
select * from stu;
select * from stu where name='zhangsan';
select * from stu where name = 'zhangsan' and age=21;
select * from stu where name = 'zhangsan' or age=22;
更新一条记录
update stu set name='zhaoliu' where id = 1003;
删除一条记录
delete from stu where id=1002;
4-- sqlite 命令 c语言版本的API(应用程序编程接口)
int sqlite3_open(
const char *filename, /* Database filename (UTF-8) */
sqlite3 **ppDb /* OUT: SQLite db handle */
);
功能:打开一个数据库
参数: filename 数据库名字
ppdb 操作数据库的指针,句柄。
返回值:成功 SQLITE_OK , 失败 error_code
const char *sqlite3_errmsg(sqlite3* db);
功能:获取错误信息描述
int sqlite3_close(sqlite3* db);
功能:关闭一个数据库
int sqlite3_exec(
sqlite3* db, /* An open database */
const char *sql, /* SQL to be evaluated */
int (*callback)(void*,int,char**,char**), /* Callback function */
void * arg, /* 1st argument to callback */
char **errmsg /* Error msg written here */
);
功能: 执行一条sql语句
参数: db 数据库的句柄指针
sql 将要被执行sql语句
callback 回调函数, 只有在查询语句时,才给回调函数传参
arg 为callback 传参的
errmsg 错误信息的地址
返回值:成功 SQLITE_OK
出错 errcode 错误码
***********************************************************
int (*callback)(void* arg ,int ncolumn ,char** f_value,char** f_name)
功能:得到查询结果
参数: arg 为回调函数传递参数使用的
ncolumn 记录的列数
f_value 列值
f_name 列的字段名称
返回值:成功 0,出错 非0
***********************************************************
回调函数:在一个函数中,调用另外任意的一个函数。
int add(int a, int b)
{
return a+b;
}
int fun()
{
ret = add(3, 5);
return ret;
}
int fun(int (*p)(int a, int b), int m , int n)
{
ret = (*p)(m, n);
return ret;
}
fun(add, 3, 5);