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的第四个参数,参数二为数据的列数,参数三为每列的所有值,参数四为每列的标题。

相关推荐
NineData2 小时前
数据库迁移总踩坑?用 NineData 迁移评估,提前识别所有兼容性风险
数据库·程序员·云计算
阿里云大数据AI技术2 小时前
用 SQL 调大模型?Hologres + 百炼,让数据开发直接“对话”AI
sql·llm
赵渝强老师4 小时前
【赵渝强老师】PostgreSQL中表的碎片
数据库·postgresql
全栈老石8 小时前
拆解低代码引擎核心:元数据驱动的"万能表"架构
数据库·低代码
倔强的石头_1 天前
kingbase备份与恢复实战(二)—— sys_dump库级逻辑备份与恢复(Windows详细步骤)
数据库
jiayou642 天前
KingbaseES 实战:深度解析数据库对象访问权限管理
数据库
李广坤3 天前
MySQL 大表字段变更实践(改名 + 改类型 + 改长度)
数据库
爱可生开源社区4 天前
2026 年,优秀的 DBA 需要具备哪些素质?
数据库·人工智能·dba
随逸1774 天前
《从零搭建NestJS项目》
数据库·typescript
加号35 天前
windows系统下mysql多源数据库同步部署
数据库·windows·mysql