在SQLite中,sqlite3_exec 函数用于执行SQL语句。该函数执行后,会返回一个整数值来表示执行结果。当sqlite3_exec返回21时,这通常表示发生了错误。 首先,我们需要明确SQLite错误代码21的含义。根据SQLite的官方文档,错误代码21通常与磁盘I/O错误相关。具体来说,它可能表示在尝试访问数据库文件时遇到了文件系统级别的错误...
许多SQLite函数从这里显示的集合中返回一个整数结果代码,以指示成功或失败。 如sqlite3_open 、sqlite3_get_table、 sqlite3_exec函数的返回值 /* ** CAPI3REF: Result Codes ** KEYWORDS: SQLITE_OK {error code} {error codes} ** KEYWORDS: {result code} {result codes} ** ** Many SQLite functions...
int n_column, char ** column_value, char **column_name ) { //para是你在 sqlite3_exec 里传入的 void * 参数 //通过para参数,你可以传入一些特殊的指针(比如类指针、结构指针),然后在这里面强制转换成对应的类型(这里面是void*类型,必须强制转换成你的类型才可用)。
(一) sqlite3_exec: 原型: SQLITE_APIintsqlite3_exec(sqlite3*,/* An open database */constchar*sql,/* SQL to be evaluated */int(*callback)(void*,int,char**,char**),/* Callback function */void*,/* 1st argument to callback */char**errmsg/* Error msg written here */); 1. 2...
select操作也可以使用sqlite3_exec函数实现,但通常使用下面的函数。 参数:第一个参数为数据库的句柄,第二个参数为sql语句,第三个参数为sql的长度(如果设置为-1,则代表系统会自动计算sql语句的长度),第四个参数用来取数据,第五个参数为尾部一般用不上可直接写NULL。
sqlite⼊门基础(⼀):sqlite3_open,sqlite3_exec,slite。。。打开链接sqlite3_open⽤法 原型:int sqlite3_open(const char *filename, /* Database filename (UTF-8) */ sqlite3 **ppDb /* OUT: SQLite db handle */ );⽤这个函数开始数据库操作。需要传⼊两个参数,⼀是数据库⽂...
返回值:成功返回SQLITE_OK 2.对数据库关闭操作 SQLITE_API int sqlite3_close(sqlite3*); 参数:数据库句柄db 返回值:成功返回SQLITE_OK 3.对数据库写操作 SQLITE_API int sqlite3_exec( sqlite3, / An open database */ const char sql, / SQL to be evaluated */ int (callback)(void,int,char,ch...
sqlite3规定最左侧的“列”索引值是 0,也就是“列”索引号从 0 开始。 返回: 根据函数类型,返回相应的数据,比如int型,double型(浮点数也是),text(字符串型)等。 3 总结 本篇主要介绍了sqlite的C语言操作的高效API函数,用于取代功能强大但效率较低的sqlite3_exec函数。本篇介绍到的几个API函数总结如下: ...
sqlite3_exec(), 运行非查询的sql语句 sqlite3_prepare(), 准备sql语句,运行select语句或者要使用parameter bind时,用这个函数(封装了sqlite3_exec). Sqlite3_step(), 在调用sqlite3_prepare后,使用这个函数在记录集中移动。 Sqlite3_close(), 关闭数据库文件 ...
sqlite3_column_int(stmt,i),此时stmt对应的是第n条记录,i对应的是第i个字段,这个方法的返回值就是取得字段值。至于blob字段可能有时会比较复杂 5.sqlite3_finalize(stmt) 这个就不用说了 二.效率问题 sqlite_exec()直接执行,可用来处理直接就能执行的sql语句,他是上面那一系列的封装,所以他的效率并不比prepa...