当前位置:文档之家 > 基于C API的SQLite3基本数据库操作

基于C API的SQLite3基本数据库操作

基于C API的SQLite3基本数据库操作

这里把近期几个项目中总结下来的SQLite数据库使用经验归纳一下,共享出来,一来便于自己查阅,二来也便于和朋友们一起互相学习。

这里先简单介绍一下SQLite数据库,给未接触过的朋友扫扫盲:
SQLite是一款开源嵌入式文件型数据库,这个主要是和其他一些C/S架构的关系型数据库比较而来的,比如MySQL等。

说他是嵌入式,因为SQLite的所有功能全部包装在一个dll中,我们只需要使用其中的导出接口就可以操作SQLite数据库,这样使得数据存储功能能够很方便的集成进用户的程序中,并运行在客户程序的进程空间中

说他是文件型,因为SQLite的数据库文件就是一个独立文件(SQLite本身不限制数据库文件的扩展名),再没有其他的了,数据,表结构,查询,视图等等都保存在这个数据库文件中,不会依赖任何数据库环境

SQLite的主要特点:
1。无需部署,0配置,无服务端
2。跨平台
2。数据文件管理方便
3。较完善的SQL92标准支持,SQLite基本实现了SQL92标准,其他的一些不兼容的地方,可以参看官方相关说明,链接:
http://www.doczj.com/doc/2d580818c5da50e2524d7f11.html /omitted.html
4。SQL语句执行速度快,具体的对比数据,网上的评测有很多,这里就不多说了
5。应用较广。最著名的集成应该数Android了吧,其他的PHP ,Python等都做了集成,所以还是很不错的
6。完美的Unicode编码支持。SQLite的接口中,凡是涉及字符串的都是用UTF8或UTF16编码交互,有的同时提供这两种编码的接口函数,所以多语种支持绝对不是问题(这也是我偏爱SQLite的很重要的原因,呵呵)。

好了,下面说说基于C API的SQLite操作,这里谢绝讨论其他的一些包装库,这不是本文的范围,当然SQLite的接口包装库函数还是很多的,基本覆盖各种主流开发语言。如基于Object Pascal的sqlitesimpledelphi,想了解这个库的朋友可以查看我的其他博文:
Delphi 2010下使用sqlitesimpledelphi连接SQLite数据库及中文乱码问题的解决
http://www.doczj.com/doc/2d580818c5da50e2524d7f11.html /2356/blog/item/4a5549366d94afd6a3cc2bc7.html
sqlites
impledelphi修正以支持Unicode,Delphi 2010 测试通过
http://www.doczj.com/doc/2d580818c5da50e2524d7f11.html /2356/blog/item/236ceb2455f2520c4c088db2.html

SQLite的数据库操作其实和常规的数据库操作流程是一样的:
1。连接数据库。
2。构造SQL语句并执行
3。对于SELECT语句,可以获取查询结果
4。数据库使用完毕之后,关闭数据库

这里说明一下,下面所介绍的函数不会涵盖所有的API函数,毕竟SQLite针对同一个功能点提供了不同的API函数,主要表现在参数和配置功能上,有需要深入了解的朋友可以参考官方的文档。

1。打开数据库:
API函数:
int sqlite3_open(
const char *file

基于C API的SQLite3基本数据库操作

这里把近期几个项目中总结下来的SQLite数据库使用经验归纳一下,共享出来,一来便于自己查阅,二来也便于和朋友们一起互相学习。

这里先简单介绍一下SQLite数据库,给未接触过的朋友扫扫盲:
SQLite是一款开源嵌入式文件型数据库,这个主要是和其他一些C/S架构的关系型数据库比较而来的,比如MySQL等。

说他是嵌入式,因为SQLite的所有功能全部包装在一个dll中,我们只需要使用其中的导出接口就可以操作SQLite数据库,这样使得数据存储功能能够很方便的集成进用户的程序中,并运行在客户程序的进程空间中

说他是文件型,因为SQLite的数据库文件就是一个独立文件(SQLite本身不限制数据库文件的扩展名),再没有其他的了,数据,表结构,查询,视图等等都保存在这个数据库文件中,不会依赖任何数据库环境

SQLite的主要特点:
1。无需部署,0配置,无服务端
2。跨平台
2。数据文件管理方便
3。较完善的SQL92标准支持,SQLite基本实现了SQL92标准,其他的一些不兼容的地方,可以参看官方相关说明,链接:
http://www.doczj.com/doc/2d580818c5da50e2524d7f11.html /omitted.html
4。SQL语句执行速度快,具体的对比数据,网上的评测有很多,这里就不多说了
5。应用较广。最著名的集成应该数Android了吧,其他的PHP ,Python等都做了集成,所以还是很不错的
6。完美的Unicode编码支持。SQLite的接口中,凡是涉及字符串的都是用UTF8或UTF16编码交互,有的同时提供这两种编码的接口函数,所以多语种支持绝对不是问题(这也是我偏爱SQLite的很重要的原因,呵呵)。

好了,下面说说基于C API的SQLite操作,这里谢绝讨论其他的一些包装库,这不是本文的范围,当然SQLite的接口包装库函数还是很多的,基本覆盖各种主流开发语言。如基于Object Pascal的sqlitesimpledelphi,想了解这个库的朋友可以查看我的其他博文:
Delphi 2010下使用sqlitesimpledelphi连接SQLite数据库及中文乱码问题的解决
http://www.doczj.com/doc/2d580818c5da50e2524d7f11.html /2356/blog/item/4a5549366d94afd6a3cc2bc7.html
sqlitesimpledelphi修正以支持Unicode,Delphi 2010 测试通过
http://www.doczj.com/doc/2d580818c5da50e2524d7f11.html /2356/blog/item/236ceb2455f2520c4c088db2.html

SQLite的数据库操作其实和常规的数据库操作流程是一样的:
1。连接数据库。
2。构造SQL语句并执行
3。对于SELECT语句,可以获取查询结果
4。数据库使用完毕之后,关闭数据库

这里说明一下,下面所介绍的函数不会涵盖所有的API函数,毕竟SQLite针对同一个功能点提供了不同的API函数,主要表现在参数和配置功能上,有需要深入了解的朋友可以参考官方的文档。

1。打开数据库:
API函数:
int sqlite3_open(
const char *file

下载Word文档免费下载:

基于C API的SQLite3基本数据库操作下载

(共4页)

TOP相关主题