数据库之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,失败返回错误代码;

相关推荐
Warren9831 分钟前
datagrip新建oracle连接教程
数据库·windows·云原生·oracle·容器·kubernetes·django
焦糖玛奇朵婷32 分钟前
扭蛋机小程序:线上扭蛋机模式发展新形势[特殊字符]
大数据·数据库·程序人生·小程序·软件需求
YMatrix 官方技术社区1 小时前
YMatrix 高可用详解:3 种镜像策略在节点宕机时表现有何不同?
运维·数据库·数据仓库·ai·数据库开发·数据库架构·ymatrix
嘟嘟w1 小时前
SQL注入是什么
数据库·sql·oracle
摇滚侠1 小时前
Redis 零基础到进阶,Redis 主从复制,笔记55-62
数据库·redis·笔记
surtr11 小时前
数据库基础(数据库原理和应用)
数据库·sql·mysql·oracle·database
张人玉1 小时前
c# DataSet 类
数据库·c#·dataset
想用offer打牌1 小时前
数据库大事务有什么危害(面试版)
数据库·后端·架构
廋到被风吹走1 小时前
【数据库】【Redis】数据结构全景图:命令、场景与避坑指南
数据结构·数据库·redis
Jaising6661 小时前
Spring 错误使用事务导致数据可见性问题分析
数据库·spring boot