SQLite Version3.3.6源代码文件结构
来源:互联网 发布:最优化问题求解 编辑:程序博客网 时间:2024/05/18 22:16
Version 3.3.6源代码文件结构
——整理:hustcat 2009-2-19
文件名称
大小byte
备注
API部分
main.c
35414
SQLite Library的大部分接口
legacy.c
3734
sqlite3_exec的实现
table.c
5464
the sqlite3_get_table() and sqlite3_free_table()的实现,它们是sqlite3_exec的包装
preprare.c
17983
主要实现sqlite3_prepare()
分词器部分(Tokenizer)
tokenize.c
14495
分词器的实现
语法分析器部分(Parser)
parser.c
116917
分析器的实现,由Lemon实现
parser.h
6847
分析器内部定义的关键字
代码生成器部分(Code Generator)
update.c
23878
处理UPDATTE语句
delete.c
21978
处理DELETE语句
insert.c
62026
处理INSERT语句
trigger.c
29065
处理TRIGGER语句
attach.c
15941
处理ATTACHT 和DEATTACH语句
select.c
112084
处理SELECT语句
where.c
75826
处理WHERE语句
vacuum.c
11005
处理VACUUM语句
pragma.c
34289
处理PRAGMA命令
expr.c
73963
处理SQL语句中的表达式
auth.c
7496
主要实现sqlite3_set_authorizer()
analyze.c
13149
实现ANALYZE命令
alter.c
18414
实现ALTER TABLE功能
build.c
104052
处理以下语法:
CREATE TABLE
DROP TABLE
CREATE INDEX
DROP INDEX
creating ID lists
BEGIN TRANSACTION
COMMIT
ROLLBACK
func.c
34335
实现SQL语句的函数语句
date.c
24031
与日期和时间转换有关的函数
虚拟机部分(Virtual Machine)
vdbeapi.c
23300
虚拟机提供上层模块调用的API实现部分
vdbe.c
143552
虚拟机的主要实现部分
vdbe.h
5309
定义了VDBE的接口,VdbeOp结构体(代表一条指令)
vdbeaux.c
58741
Vdbe.h的接口的实现
vdbeInt.h
17595
Vdbe.c的私有头文件,定义了VDBE常用的数据结构:
Cursor——虚拟机中使用的游标
Mem——vdbe在内部把所有的SQL值当作一个Mem数据结构来处理
Vdbe——虚拟机数据结构
vdbemem.c
26375
操作”Mem”数据结构的函数
vdbefifo.c
2927
B-Tree部分
btree.h
5260
头文件,定义了B-tree提供的操作接口
btree.c
215570
B-Tree部分的主要实现,并定义了以下数据结构:
Btree——Btree handler
BtCursor——使用的游标
BtLock——锁
BtShared——包含了一个打开的数据库的所有信息
MemPage——文件在内存存放在该数据结构中
CellInfo
Pager部分
pager.h
4161
定义sqlite page cache子系统提供的接口
pager.c
127490
Pager模块的主要实现,并定义了以下数据结构:
PgHdr——每一个内存中的页面的页面头
Pager——该模块中最重要的数据结构
PgHistory
OS Interface部分
os.h
18355
定义了为上层模块提供的操作函数,并定义了以下数据结构:
OsFile——描述一个文件
IoMethod——OsFile所支持的操作函数(对所有架构都适用的OS Interface)
os.c
2866
对IoMethod中的函数的包装
os_win.c
42975
Windows平台下的OS Interface
os_unix.c
60831
Unix平台下的OS Interface
os_os2.c
28451
OS2平台下的OS Interface
其它部分
utf.c
20891
与UTF编码有关的函数
util.c
43575
一些实用函数,比如:
sqlite3Malloc(),sqlite3FreeX()
sqlite3.h
63873
SQLite的头文件,定义了提供给应用使用的API和数据结构。
sqliteInt.h
78886
定义了SQLite内部使用的接口和数据结构
printf.c
29556
主要实现与printf有关的函数
random.c
3078
随机数生成
hash.c
11896
SQLite使用的hash表
hash.h
4033
Hash 表头文件
- SQLite Version3.3.6源代码文件结构
- SQLite Version3.3.6源代码文件结构
- SQLite Version3.3.6源代码文件结构
- SQLite Version3.3.6源代码文件结构
- SQLite Version3.3.6源代码文件结构
- SQLite Version3.3.6源代码文件结构
- SQLite学习(三) - SQLite源代码文件结构
- SQLite学习(三) - SQLite源代码文件结构
- SQLite学习(四) - SQLite源代码文件结构2
- SQLite3.3.6 源代码文件结构
- FreeRadius Version3.0.7文件目录
- android源代码文件结构
- Peercast源代码文件结构分析
- xvid源代码以及文件结构
- Joomla源代码的文件目录结构
- Version 3.3.6源代码文件结构
- gem5源代码文件结构作用介绍
- web.xml文件version2.5和version3.0
- Two ways to create a new thread of execution
- 分数类中的运算符重载(续)
- Android之Android apk动态加载机制的研究
- 设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。
- eclipse集成maven3后,创建java项目详细图解
- SQLite Version3.3.6源代码文件结构
- java 遍历arrayList的四种方法
- ORMLite完全解析(一)通过实例理解使用流程
- HZNU-1028: 多项式合并(map实现)
- 畅游C++ Boost Serialization 序列化
- 二叉树(三)
- ipdegin 127.0.0.1pend
- SpringMVC4零配置--web.xml
- maven3常用命令、java项目搭建、web项目搭建详细图解