SQLite C语言接口-阿里云开发者社区

开发者社区> 长空翱翔> 正文

SQLite C语言接口

简介: 数据表设计 create table tbl_emp( id integer primary key , name varchar(40), age smallint, birthday datetime); sqlite3是数据库连接对象,用来操作数...
+关注继续查看


数据表设计


  1. create table tbl_emp(

  2. id integer primary key ,

  3. name varchar(40),

  4. age smallint,

  5. birthday datetime);


sqlite3是数据库连接对象,用来操作数据库

打开数据库对象函数


  1. int sqlite3_open(

  2. const char *filename, /*数据库文件名 */

  3. sqlite3 **ppDb /* 创建的数据库连接对象*/

  4. );


关闭数据库对象函数


  1. int sqlite3_close(sqlite3 */*打开的数据库连接对象*/);


返回数据库错误消息


  1. const char *sqlite3_errmsg(sqlite3*);


编译过程


  1. gcc v1.c

  2. -o v1

  3. -I/usr/local/sqlite3/include

  4. -L/usr/local/sqlite3/lib

  5. -lsqlite3

  6. gcc v1.c -o v1 -I/usr/local/sqlite/include -L/usr/local/sqlite/lib -lsqlite3

  7. export LD_LIBRARY_PATH=/usr/local/sqlite/lib:$LD_LIBRARY_PATH

  8. ./v1


执行sql语句函数


  1. int sqlite3_exec(

  2. sqlite3*, /* 打开的数据库连接对象*/

  3. const char *sql, /* 将要执行的sql语句*/

  4. int (*callback)(void*,int,char**,char**), /* 回调函数*/

  5. void *, /* 回调函数的第一个参数*/

  6. char **errmsg /* 错误的消息*/

  7. );



查询函数


  1. int sqlite3_get_table(

  2. sqlite3 *db, /*数据库连接对象*/

  3. const char *zSql, /*将要执行的sql语句*/

  4. char ***pazResult, /* 查询的结果集 */

  5. int *pnRow, /* 结果集的行数*/

  6. int *pnColumn, /*结果集的列数*/

  7. char **pzErrmsg /* 查询的错误消息*/ );

释放结果集函数


  1. void sqlite3_free_table(char **result);


使用回调函数查询

回调函数


  1. int (*callback)(

  2. void*,/*从sqlite3_exec传递来的参数*/

  3. int,/*结果集的列数*/

  4. char**, /*列的值*/

  5. char**/*列的名字*/

  6. )


预处理对象


  1. int sqlite3_prepare(

  2. sqlite3 *db, /* 数据库连接对象*/

  3. const char *zSql, /*将要执行的sql语句*/

  4. int nByte, /* sql语句的长度 -1*/

  5. sqlite3_stmt **ppStmt, /* sqlite3_stmt对象 */

  6. const char **pzTail /* 指向执行的sql语句 0*/

  7. );

其它函数


  1. int sqlite3_bind_text(sqlite3_stmt*, int, const char*, int n, void(*)(void*));

  2. int sqlite3_step(sqlite3_stmt*);

  3. const unsigned char *sqlite3_column_text(sqlite3_stmt*, int iCol);

  4. int sqlite3_finalize(sqlite3_stmt *pStmt);


预处理对象重复使用


  1. int sqlite3_reset(sqlite3_stmt*);

img_5d63162eaef1ec131b26e9476dc6e085.jpg

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
PostgreSQL 10.1 手册_部分 IV. 客户端接口_第 33 章 libpq - C 库_33.8. 异步提示
33.8. 异步提示 PostgreSQL通过LISTEN和NOTIFY命令提供了异步通知。一个客户端会话用LISTEN命令在一个特定的通知频道中注册它感兴趣的通知(也可以用UNLISTEN命令停止监听)。
935 0
VSCode 小鸡汤 第01期 - REST Client 简单好用的接口测试辅助工具
VSCode 小鸡汤 第01期 - REST Client 简单好用的接口测试辅助工具
1591 0
PostgreSQL 通过SQL接口关闭、重启数据库
PostgreSQL 通过SQL接口关闭、重启数据库
1155 0
Iterator、Iterable接口的使用及详解
Java集合类库将集合的接口与实现分离。同样的接口,可以有不同的实现。 Java集合类的基本接口是Collection接口。而Collection接口必须继承java.lang.Iterable接口。
1376 0
SQLite C语言接口
数据表设计 create table tbl_emp( id integer primary key , name varchar(40), age smallint, birthday datetime); sqlite3是数据库连接对象,用来操作数...
695 0
+关注
长空翱翔
长期从事Windows和linux应用程序开发,系统开发,驱动程序开发以及基于.net平台的软件开发;擅长面向对象程序设计、数据库设计、应用与开发;
938
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载