C语言下使用SQL语言

需头文件:#include<sqlite.h>---需下载

1.sqlite3_open

int sqlite3_open(

const char *filename, /* Database filename (UTF-8) */

sqlite3 **ppDb /* OUT: SQLite db handle */

);

功能:

打开数据库文件(创建一个数据库连接)

参数:

filename:数据库文件路径

ppDb:操作数据库指针存放空间的首地址

返回值:

成功返回SQLITE_OK

失败返回错误码

例如:sqlite3_open("1.db",&ppdb); //ppdb为定义的sqlite3类型的空指针

2.sqlite3_close

int sqlite3_close(sqlite3*);

功能:

关闭数据库连接

3.sqlite3_exec

int sqlite3_exec(

sqlite3*, /* An open database */

const char *sql, /* SQL to be evaluated */

int (*callback)(void*,int,char**,char**), /* Callback function */

void *, /* 1st argument to callback */

char **errmsg /* Error msg written here */

);

功能:

执行一条SQL语句

参数:

sqlite3*: 数据库句柄

sql: 要执行的SQL语句字符串首地址

callback: 只有在select时才会使用,其余调用时传递NULL

void*: 给回调函数的传参

errmsg:出错信息存放空间首地址(使用完毕后使用sqlite3_free释放空间)

返回值:

成功返回SQLITE_OK

失败返回错误码

例如:sqlite3_exec(ppdb,tmpbuf,NULL,NULL,&errmsg); //对数据库操作的命令存在tmpbuf中

查询数据库时的使用:

sqlite3_exec(ppdb,tmpbuf,callback,qwer,NULL,&errmsg);

callback为一个函数,为找到数据后对数据的处理方式 ,其形式必须与规定的形式相同。且该函数为回调函数,所以必须有return 0;否则只能使用一次。在找到一条相关数据后,该函数被调用一次。

int (*callback)(void*,int,char**,char**)----其有四个参数,参数一为sqlite3_exec的第四个参数,参数二为数据的列数,参数三为每列的所有值,参数四为每列的标题。

相关推荐
这周也會开心1 小时前
SQL-窗口函数
数据库·sql
TDengine (老段)3 小时前
TDengine 时间函数 WEEKDAY() 用户手册
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
TDengine (老段)3 小时前
从 ETL 到 Agentic AI:工业数据管理变革与 TDengine IDMP 的治理之道
数据库·数据仓库·人工智能·物联网·时序数据库·etl·tdengine
LQ深蹲不写BUG5 小时前
MySql的事务机制
数据库·mysql
逼子格6 小时前
【Proteus仿真】定时器控制系列仿真——秒表计数/数码管显示时间
数据库·单片机·嵌入式硬件·51单片机·proteus·定时器·硬件工程师
stein_java7 小时前
Mybatis-7 XML映射器
数据库·sql·mybatis
xhbh6667 小时前
开发效率翻倍:资深DBA都在用的MySQL客户端利器
数据库·mysql·数据库连接工具·mysql 连接工具
LJC_Superman7 小时前
Web与Nginx网站服务
运维·服务器·前端·网络·数据库·nginx·vim
java水泥工7 小时前
校园管理系统|基于SpringBoot和Vue的校园管理系统(源码+数据库+文档)
数据库·vue.js·spring boot