SQLite - Virtual Database Engine
来源:互联网 发布:淘宝2元包邮 编辑:程序博客网 时间:2024/05/23 21:41
VDBE是SQLite的核心,理解的VDBE的内部工作机制对于理解SQLite是如何工作的十分重要。 从SQLite Architectue图中可以看出, VDBE处在SQLite的中心位置。VDBE实现了一个可以执行 VDBE指令的虚拟机。VDBE指令由opcode和operand组成, 指令可以有0~4个operand. 如果了解汇编语言, 就可以很容易的理解VDBE指令。
查看VDBE 指令方法
sqlite>.explain
sqlite>CREATE TABLE examp(one text, two int);
sqlite>EXPLAIN INSERT INTO examp VALUES('Hello, World!',99);
addr opcode p1 p2 p3 p4 p5 comment
---- ------------- ---- ---- ---- ------------- -- -------------
0 Trace 0 0 0 00
1 Goto 0 10 0 00
2 OpenWrite 0 4 0 2 00
3 NewRowid 0 2 0 00
4 String8 0 3 0 Hello, World! 00
5 Integer 99 4 0 00
6 MakeRecord 3 2 5 ad 00
7 Insert 0 5 2 examp 1b
8 Close 0 0 0 00
9 Halt 0 0 0 00
10 Transaction 0 1 0 00
11 VerifyCookie 0 3 0 00
12 TableLock 0 4 1 examp 00
13 Goto 0 2 0 00
具体每个opcode的意义可以查这个网页: http://www.sqlite.org/opcode.html
或者
直接阅读vdbe.c 源代码文件中的sqlite3VdbeExec(vdbe* p)函数
- SQLite - Virtual Database Engine
- [SQLite]---database
- windows phone:Using the SQLite database engine with Windows Phone 8 apps
- MySQL Database storage engine
- ORACLE Virtual Private Database
- 关于Access的Database Engine
- H2 DataBase Engine(H2DB)介绍
- Microsoft JET Database Engine error
- SQLite语法 DETACH DATABASE
- SQLite语法 DETACH DATABASE
- SQLite语法 ATTACH DATABASE
- android database SQLite
- Android SQLite Database
- sqlite database is locked
- SQLite Database Browser
- Android SQLite Database Tutorial
- SQLite Database Browser 介绍
- 数据库,DataBase,sqlite
- graphedit无法启动, 运行后只出现在任务栏,没有主窗口
- smart client
- DevExpress ASPxGridView 使用文档三:编辑
- 第一次玩CSDN的BLOG
- listen形参之backlog含义
- SQLite - Virtual Database Engine
- 关于新课程中知识的形成过程问题。
- tomcat6.0.24 gzip bug
- Ant基本使用指南(二)
- oracle绑定变量
- mySQL 忘记root 密码 修改方法
- DevExpress ASPxGridView 使用文档四:数据源
- 幣別數值顯示(例:JPY,數據庫讀出是100,需要轉10000)
- >Hibernate 报错:this project is not a myeclipse hibernate project . assuming hibernate 3 cap