数据库之API操作

SQLite编程接口

int sqlite3_open(char *path, sqlite3 **db);//打开数据库

--功能:打开sqlite数据库

--path:数据库文件路径

--db:指向sqlite句柄的指针

--返回值:成功返回SQLITE_OK,失败返回错误码(非零值)

int sqlite3_close(sqlite3 *db);//关闭数据库

--返回值:成功返回SQLITE_OK,失败返回错误码

const char *sqlite3_errmg(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 回调函数,只有sql为查询语句的时候,才会执行此语句

arg表示的是给回调函数传递参数

errmsg错误消息

返回值:成功 返回SQLITE_OK

int (*acllback)(void * arg,int f_num, char **f_value,char ** f_name);

功能:查询的结果,是一个函数指针类型,传递一个函数名即可。

typedef int(*sqlite3_callback)(void *para,int f_num, char **f_value,char **f_name);

--功能:每找到一条记录自动执行一次回调函数

--para:传递给回调函数的参数

--f_num:记录中包含的字段数目

--f_value:包含每个字段值的指针数组

--f_name:包含每个字段名称的指针数组

--返回值:成功返回0,失败返回-1;

不使用回调函数执行SQL语句

int sqlite3_get_table(sqlite3 *db,const char *sql, char ***resultp, int *nrow, int *ncolum, char **errmsg);

--功能:执行SQL操作

--db:SQL语句

--resultp:用来指向sql执行结果的指针

--nrow:满足条件的记录的数目

--ncolumn:每条记录包含的字段数目

--errmsg:错误信息指针的地址

--返回值:成功返回0,失败返回错误代码;

相关推荐
学地理的小胖砸42 分钟前
【Python 操作 MySQL 数据库】
数据库·python·mysql
dddaidai1231 小时前
Redis解析
数据库·redis·缓存
数据库幼崽1 小时前
MySQL 8.0 OCP 1Z0-908 121-130题
数据库·mysql·ocp
Amctwd2 小时前
【SQL】如何在 SQL 中统计结构化字符串的特征频率
数据库·sql
betazhou2 小时前
基于Linux环境实现Oracle goldengate远程抽取MySQL同步数据到MySQL
linux·数据库·mysql·oracle·ogg
lyrhhhhhhhh3 小时前
Spring 框架 JDBC 模板技术详解
java·数据库·spring
喝醉的小喵4 小时前
【mysql】并发 Insert 的死锁问题 第二弹
数据库·后端·mysql·死锁
付出不多4 小时前
Linux——mysql主从复制与读写分离
数据库·mysql
初次见面我叫泰隆4 小时前
MySQL——1、数据库基础
数据库·adb
Chasing__Dreams4 小时前
Redis--基础知识点--26--过期删除策略 与 淘汰策略
数据库·redis·缓存