八个函数:
sqlite3_open 打开一个数据库对象
sqlite3_prepare_v2 创建一个SQL语句对象
sqlite3_finalize 销毁SQL语句对象
sqlite3_bind_* 给 SQL语句绑定参数,*有一些列语句(根据参数类型不同)
sqlite3_step 执行SQL语句
sqlite3_reset 解除绑定,为下次绑定做准备
sqlite3_exec 执行SQL语句(一步到位的执行)
部分用法
Int sqlite3_open(char* pathname,sqlite3 **ppDb);
@pathname 数据库文件路径 @ppDd 二级指针,用来保存数据库对象)
成功返回 SQLITE_OK 失败返回其它值。
例如:
sqlite3* ppDb = NULL;
int ret = 0;
ret = sqlite3_open("./test.db",&ppDb);//打开"./test.db"数据库,并将数据库对象存储在ppDb中
if(ret != SQLITE_OK)
{
errno = ret;
perror("sqlite3 open error");
return -1;
}
Int sqlite3_prepare_v2(sqlite3* ppDb,char *zsql,int nBytes,sqlite3_stmt **ppStmt,char**pzTil);
@ppDb 指定数据库对象,@zsql 数据库语句 @nBytes字符串长度 (-1,默认编译所有,0 不编译);@ppStmt 保存编译好的sql语句对象. @pzTil 指向第二条sql语句,包含多条sql语句时使用。
例如:
sqlite3_stmt* ppStmt = NULL;
char* pzTil = NULL;
char * sql = "CREATE TABLE student_score(id integer(10) NOT NULL UNIQUE,name varchar(20) NOT NULL,score integer(3));";//SQL语句结尾必须有 ; 号
ret = sqlite3_prepare_v2(ppDb, //指定数据库对象
sql, //指定原始SQL语句
-1,//指定sql语句长度,<0表示编译整个SQL语句
&ppStmt, //用于存储SQL语句对象
&pzTil //用于存储第二条SQL语句首地址
//sql是单条SQL语句时,无效
);
if(ret != SQLITE_OK)
{
errno = ret;
perror("sqlite3 open error");
return -1;
}
Int sqlite3_close(sqlite# *ppDb) 关闭数据库。