sqlite3函数小结

前端之家收集整理的这篇文章主要介绍了sqlite3函数小结前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

1、打开数据库
说明:打开一个数据库,如果不存在则自动创建。第一个参数指定文件名,第二个参数则是您定义的 sqlite3 **ppDb 结构体指针,结构体是什么内容暂时没有必要晓得,我们只要晓得它就相当于一个数据库句柄就可以了。
int sqlite3_open(
const char *filename,/* 数据库文件名(UTF-8)*/

sqlite3 **ppDb /* OUT: sqlite 数据库句柄 */
);

2、关闭数据库
说明:参数就是sqlite3_open() 获得得 ooDb句柄。通过调用这个函数关闭数据库
int sqlite3_close(sqlite3*); //参数就是刚才得结构体,也就是数据库句柄。


3、执行sql
说明:这个函数功能是执行一条或者多条sql语句,sql语句之间用“;”号隔开。建议在执行一条或者多条sql语句得时候,指定第三个参数回调函数,在回调函数中可以获得执行sql得详细过程,如果所有sql执行完毕则应该返回0,否则,则说明这次执行并没有完全成功。
第五个参数:如果执行失败(没有返回0)则可以查看第五个阐述得值。来查看详细错误信息。
int sqlite3_exec(
sqlite3*,/* 已经打开的数据库句柄 */
const char *sql,/* 要执行的sql语句*/
sqlite_callback,/* 回调函数*/
void *,/*传递给回调函数的参数*/
char **errmsg /* 保存错误信息*/
);


4、取当前插入位置:
功能:返回你前一次插入得位置,从1开始,sqlite3* 为你打开数据库所得到得句柄。
long long int sqlite3_last_insert_rowid(sqlite3*);


5、执行SQL查询
功能:执行一次查询sql 并且返回得到一个记录集。
intsqlite3_get_table(
sqlite3*,/* 已经打开的数据库句柄 */
const char *sql,/* 要执行的sql语句*/
char ***resultp,/* 保存返回记录集的指针,包含列名及烈属性值。行优先,从0起计数下标*/
int *nrow,/*返回记录行数数*/
int *ncolumn,/* 返回记录列数*/
char **errmsg/* 返回错误信息*/
)

6、释放查询结果:
功能:释放当前查询的记录集所占用的内存
void sqlite3_free_table(char **result);

7、sqlite3_free(char **errmsg)
功能:释放存放错误信息的内存空间(3和5中的errmsg必须用此函数释放)。
8、char *sqlite3_mprintf(const char*,...);
char *sqlite3_vmprintf(const char*,va_list);

函数功能与"sprintf()" 相似。函数返回的字符串被写入通过 malloc() 得到的内存空间,因此,永远不会存在内存泄露的问题。这些函数也用于进行构造sql语句的格式转换。注意,返回的字符串要用sqlite3_free()释放空间。All of the usual printf formatting options apply. In addition,there is a "%q" option. %q works like %s in that it substitutes a null-terminated string from the argument list. But %q also doubles every '\'' character. %q is designed for use inside a string literal.

猜你在找的Sqlite相关文章