| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
f663x
10年前发布

SQLite的架构 (The Architecture Of SQLite)

介绍

这篇文档描述SQLite库的基本架构。对那些想要理解和修改SQLite的人很有帮助。

下面这张图表展示了SQLite的组件和它们之间的关系。


接口(Interface)

SQLite的很多对外接口的实现函数在main.clegacy.c和vdbeapi.c。还以一些散落在其他文件中,sqlite3_get_table() 函数实现在table.c,sqlite3_mprintf()函数在printf.c,sqlite3_complete()在tokenize.c中。SQLite的更多接口请访问available separately

为了不和其他代码产生命名冲突,所有的SQLite API命名以sqlite3_为前缀。


Tokenizer和Parser

注:tokenizer是负责把SQL语句解析为一个个的“串”,而Paser是根据这些“串”的前后序列关系来生成相应的语法结构。

Code Generator(代码生成器)

生成Virtual Machine可以执行的高效代码
</div>

Virtual Machine

执行Code Generator 生成的代码

B-Tree

SQLite数据库文件在磁盘中是以B树的数据结构存储

http://www.sqlite.org/arch.html

来自:http://blog.csdn.net/sinat_26227857/article/details/44256767

 本文由用户 f663x 自行上传分享,仅供网友学习交流。所有权归原作者,若您的权利被侵害,请联系管理员。
 转载本站原创文章,请注明出处,并保留原始链接、图片水印。
 本站是一个以用户分享为主的开源技术平台,欢迎各类分享!
 本文地址:https://www.open-open.com/lib/view/open1426321265623.html
SQLite 数据库服务器