srcAnaly
Folders and files
Name | Name | Last commit date | ||
---|---|---|---|---|
parent directory.. | ||||
<!DOCTYPE HTML> <html lang="en-US" manifest="../manifest.appcache"> <head> <meta charset="UTF-8"> <title>关系查询处理器 | SQlite源码分析</title> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <meta name="description" content=""> <meta name="generator" content="GitBook 0.7.0"> <meta name="HandheldFriendly" content="true"/> <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no"> <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> <link rel="shortcut icon" href="../gitbook/images/favicon.ico" type="image/x-icon"> <link rel="next" href="../srcAnaly/selectExec.html" /> <link rel="prev" href="../vdbesort/functions.html" /> </head> <body> <link rel="stylesheet" href="../gitbook/style.css"> <div class="book" data-level="4" data-basepath=".." data-revision="1426425870398"> <div class="book-header"> <!-- Actions Left --> <a href="#" class="btn pull-left toggle-summary" aria-label="Toggle summary"><i class="fa fa-align-justify"></i></a> <a href="https://github.com/null" target="_blank" class="btn pull-left home-bookmark" aria-label="GitHub home"><i class="fa fa-bookmark-o"></i></a> <a href="#" class="btn pull-left toggle-search" aria-label="Toggle search"><i class="fa fa-search"></i></a> <span id="font-settings-wrapper"> <a href="#" class="btn pull-left toggle-font-settings" aria-label="Toggle font settings"><i class="fa fa-font"></i> </a> <div class="dropdown-menu font-settings"> <div class="dropdown-caret"> <span class="caret-outer"></span> <span class="caret-inner"></span> </div> <div class="btn-group btn-block"> <button id="reduce-font-size" class="btn btn-default">A</button> <button id="enlarge-font-size" class="btn btn-default">A</button> </div> <ul class="list-group font-family-list"> <li class="list-group-item" data-font="0">Serif</li> <li class="list-group-item" data-font="1">Sans</li> </ul> <div class="btn-group btn-group-xs btn-block color-theme-list"> <button type="button" class="btn btn-default" id="color-theme-preview-0" data-theme="0">White</button> <button type="button" class="btn btn-default" id="color-theme-preview-1" data-theme="1">Sepia</button> <button type="button" class="btn btn-default" id="color-theme-preview-2" data-theme="2">Night</button> </div> </div> </span> <!-- Actions Right --> <a href="#" target="_blank" class="btn pull-right google-plus-sharing-link sharing-link" data-sharing="google-plus" aria-label="Share on Google Plus"><i class="fa fa-google-plus"></i></a> <a href="#" target="_blank" class="btn pull-right facebook-sharing-link sharing-link" data-sharing="facebook" aria-label="Share on Facebook"><i class="fa fa-facebook"></i></a> <a href="#" target="_blank" class="btn pull-right twitter-sharing-link sharing-link" data-sharing="twitter" aria-label="Share on Twitter"><i class="fa fa-twitter"></i></a> <!-- Title --> <h1> <i class="fa fa-spinner fa-spin"></i> <a href="../" >SQlite源码分析</a> </h1> </div> <div class="book-summary"> <div class="book-search"> <input type="text" placeholder="Search" class="form-control" /> </div> <ul class="summary"> <li class="chapter " data-level="0" data-path="index.html"> <a href="../index.html"> <i class="fa fa-check"></i> 首页 </a> </li> <li class="chapter " data-level="1" data-path="sqlite/sqliteintro.html"> <a href="../sqlite/sqliteintro.html"> <i class="fa fa-check"></i> <b>1.</b> SQLite简介 </a> <ul class="articles"> <li class="chapter " data-level="1.1" data-path="vdbemem/vdbememsqliteintro.html"> <a href="../vdbemem/vdbememsqliteintro.html"> <i class="fa fa-check"></i> <b>1.1.</b> SQLite特性 </a> </li> <li class="chapter " data-level="1.2" data-path="sqlite/introduce.html"> <a href="../sqlite/introduce.html"> <i class="fa fa-check"></i> <b>1.2.</b> 推荐使用场景 </a> </li> <li class="chapter " data-level="1.3" data-path="sqlite/READMEG14.html"> <a href="../sqlite/READMEG14.html"> <i class="fa fa-check"></i> <b>1.3.</b> 快速使用SQLite </a> </li> </ul> </li> <li class="chapter " data-level="2" data-path="sqlite/architecture.html"> <a href="../sqlite/architecture.html"> <i class="fa fa-check"></i> <b>2.</b> SQLite体系结构 </a> <ul class="articles"> <li class="chapter " data-level="2.1" data-path="sqlite/system.html"> <a href="../sqlite/system.html"> <i class="fa fa-check"></i> <b>2.1.</b> 体系结构 </a> </li> <li class="chapter " data-level="2.2" data-path="sqlite/sqlitemodule.html"> <a href="../sqlite/sqlitemodule.html"> <i class="fa fa-check"></i> <b>2.2.</b> 各结构作用 </a> </li> </ul> </li> <li class="chapter " data-level="3" data-path="vdbemem/summary.html"> <a href="../vdbemem/summary.html"> <i class="fa fa-check"></i> <b>3.</b> 进程模型 </a> <ul class="articles"> <li class="chapter " data-level="3.1" data-path="vdbeInt&vdbemem887/whatIsVdbe.html"> <a href="../vdbeInt&vdbemem887/whatIsVdbe.html"> <i class="fa fa-check"></i> <b>3.1.</b> 什么是VDBE </a> <ul class="articles"> <li class="chapter " data-level="3.1.1" data-path="vdbeInt&vdbemem887/sqlite&vdbe.html"> <a href="../vdbeInt&vdbemem887/sqlite&vdbe.html"> <i class="fa fa-check"></i> <b>3.1.1.</b> sqLite为什么要使用虚拟机 </a> </li> <li class="chapter " data-level="3.1.2" data-path="vdbeInt&vdbemem887/vdbeProcess.html"> <a href="../vdbeInt&vdbemem887/vdbeProcess.html"> <i class="fa fa-check"></i> <b>3.1.2.</b> VDBE的运行 </a> </li> <li class="chapter " data-level="3.1.3" data-path="vdbeInt&vdbemem887/vdbeInt.html"> <a href="../vdbeInt&vdbemem887/vdbeInt.html"> <i class="fa fa-check"></i> <b>3.1.3.</b> vdbeInt.h简介 </a> </li> </ul> </li> <li class="chapter " data-level="3.2" data-path="vdbe/README.html"> <a href="../vdbe/README.html"> <i class="fa fa-check"></i> <b>3.2.</b> VDBE执行方法 </a> </li> <li class="chapter " data-level="3.3" data-path="execuing_of_vdbec/README.html"> <a href="../execuing_of_vdbec/README.html"> <i class="fa fa-check"></i> <b>3.3.</b> SQLite执行与VDBE </a> <ul class="articles"> <li class="chapter " data-level="3.3.1" data-path="execuing_of_vdbec/op_init.html"> <a href="../execuing_of_vdbec/op_init.html"> <i class="fa fa-check"></i> <b>3.3.1.</b> OP_Init </a> </li> <li class="chapter " data-level="3.3.2" data-path="execuing_of_vdbec/op_transaction.html"> <a href="../execuing_of_vdbec/op_transaction.html"> <i class="fa fa-check"></i> <b>3.3.2.</b> OP_Transaction </a> </li> <li class="chapter " data-level="3.3.3" data-path="execuing_of_vdbec/op_tablelock.html"> <a href="../execuing_of_vdbec/op_tablelock.html"> <i class="fa fa-check"></i> <b>3.3.3.</b> OP_TableLock </a> </li> <li class="chapter " data-level="3.3.4" data-path="execuing_of_vdbec/op_goto.html"> <a href="../execuing_of_vdbec/op_goto.html"> <i class="fa fa-check"></i> <b>3.3.4.</b> OP_Goto </a> </li> <li class="chapter " data-level="3.3.5" data-path="execuing_of_vdbec/op_readcookie.html"> <a href="../execuing_of_vdbec/op_readcookie.html"> <i class="fa fa-check"></i> <b>3.3.5.</b> OP_ReadCookie </a> </li> <li class="chapter " data-level="3.3.6" data-path="execuing_of_vdbec/op_if.html"> <a href="../execuing_of_vdbec/op_if.html"> <i class="fa fa-check"></i> <b>3.3.6.</b> OP_If </a> </li> <li class="chapter " data-level="3.3.7" data-path="execuing_of_vdbec/op_integer1.html"> <a href="../execuing_of_vdbec/op_integer1.html"> <i class="fa fa-check"></i> <b>3.3.7.</b> OP_Integer1 </a> </li> <li class="chapter " data-level="3.3.8" data-path="execuing_of_vdbec/op_setcookie.html"> <a href="../execuing_of_vdbec/op_setcookie.html"> <i class="fa fa-check"></i> <b>3.3.8.</b> OP_SetCookie </a> </li> <li class="chapter " data-level="3.3.9" data-path="execuing_of_vdbec/op_integer2.html"> <a href="../execuing_of_vdbec/op_integer2.html"> <i class="fa fa-check"></i> <b>3.3.9.</b> OP_Integer2 </a> </li> <li class="chapter " data-level="3.3.10" data-path="execuing_of_vdbec/op_setcookie.html"> <a href="../execuing_of_vdbec/op_setcookie.html"> <i class="fa fa-check"></i> <b>3.3.10.</b> OP_SetCookie </a> </li> <li class="chapter " data-level="3.3.11" data-path="execuing_of_vdbec/op_createtable.html"> <a href="../execuing_of_vdbec/op_createtable.html"> <i class="fa fa-check"></i> <b>3.3.11.</b> OP_CreateTable </a> </li> <li class="chapter " data-level="3.3.12" data-path="execuing_of_vdbec/op_openwrite.html"> <a href="../execuing_of_vdbec/op_openwrite.html"> <i class="fa fa-check"></i> <b>3.3.12.</b> OP_OpenWrite </a> </li> <li class="chapter " data-level="3.3.13" data-path="execuing_of_vdbec/op_newrowid.html"> <a href="../execuing_of_vdbec/op_newrowid.html"> <i class="fa fa-check"></i> <b>3.3.13.</b> OP_NewRowid </a> </li> <li class="chapter " data-level="3.3.14" data-path="execuing_of_vdbec/op_null1.html"> <a href="../execuing_of_vdbec/op_null1.html"> <i class="fa fa-check"></i> <b>3.3.14.</b> OP_Null1 </a> </li> <li class="chapter " data-level="3.3.15" data-path="execuing_of_vdbec/op_insert.html"> <a href="../execuing_of_vdbec/op_insert.html"> <i class="fa fa-check"></i> <b>3.3.15.</b> OP_Insert </a> </li> <li class="chapter " data-level="3.3.16" data-path="execuing_of_vdbec/op_close1.html"> <a href="../execuing_of_vdbec/op_close1.html"> <i class="fa fa-check"></i> <b>3.3.16.</b> OP_Close1 </a> </li> <li class="chapter " data-level="3.3.17" data-path="execuing_of_vdbec/op_close2.html"> <a href="../execuing_of_vdbec/op_close2.html"> <i class="fa fa-check"></i> <b>3.3.17.</b> OP_Close2 </a> </li> <li class="chapter " data-level="3.3.18" data-path="execuing_of_vdbec/op_null2.html"> <a href="../execuing_of_vdbec/op_null2.html"> <i class="fa fa-check"></i> <b>3.3.18.</b> OP_Null2 </a> </li> <li class="chapter " data-level="3.3.19" data-path="execuing_of_vdbec/op_openwrite1.html"> <a href="../execuing_of_vdbec/op_openwrite1.html"> <i class="fa fa-check"></i> <b>3.3.19.</b> OP_OpenWrite1 </a> </li> <li class="chapter " data-level="3.3.20" data-path="execuing_of_vdbec/op_mustbeint.html"> <a href="../execuing_of_vdbec/op_mustbeint.html"> <i class="fa fa-check"></i> <b>3.3.20.</b> OP_MustBeInt </a> </li> <li class="chapter " data-level="3.3.21" data-path="execuing_of_vdbec/op_notexists.html"> <a href="../execuing_of_vdbec/op_notexists.html"> <i class="fa fa-check"></i> <b>3.3.21.</b> OP_NotExists </a> </li> <li class="chapter " data-level="3.3.22" data-path="execuing_of_vdbec/op_rowid.html"> <a href="../execuing_of_vdbec/op_rowid.html"> <i class="fa fa-check"></i> <b>3.3.22.</b> OP_Rowid </a> </li> <li class="chapter " data-level="3.3.23" data-path="execuing_of_vdbec/op_isnull.html"> <a href="../execuing_of_vdbec/op_isnull.html"> <i class="fa fa-check"></i> <b>3.3.23.</b> OP_IsNull </a> </li> <li class="chapter " data-level="3.3.24" data-path="execuing_of_vdbec/op_string.html"> <a href="../execuing_of_vdbec/op_string.html"> <i class="fa fa-check"></i> <b>3.3.24.</b> OP_String </a> </li> <li class="chapter " data-level="3.3.25" data-path="execuing_of_vdbec/op_string1.html"> <a href="../execuing_of_vdbec/op_string1.html"> <i class="fa fa-check"></i> <b>3.3.25.</b> OP_String1 </a> </li> <li class="chapter " data-level="3.3.26" data-path="execuing_of_vdbec/op_string2.html"> <a href="../execuing_of_vdbec/op_string2.html"> <i class="fa fa-check"></i> <b>3.3.26.</b> OP_String2 </a> </li> <li class="chapter " data-level="3.3.27" data-path="execuing_of_vdbec/op_copy.html"> <a href="../execuing_of_vdbec/op_copy.html"> <i class="fa fa-check"></i> <b>3.3.27.</b> OP_Copy </a> </li> <li class="chapter " data-level="3.3.28" data-path="execuing_of_vdbec/op_string3.html"> <a href="../execuing_of_vdbec/op_string3.html"> <i class="fa fa-check"></i> <b>3.3.28.</b> OP_String3 </a> </li> <li class="chapter " data-level="3.3.29" data-path="execuing_of_vdbec/op_makerecord.html"> <a href="../execuing_of_vdbec/op_makerecord.html"> <i class="fa fa-check"></i> <b>3.3.29.</b> OP_MakeRecord </a> </li> <li class="chapter " data-level="3.3.30" data-path="execuing_of_vdbec/op_insert1.html"> <a href="../execuing_of_vdbec/op_insert1.html"> <i class="fa fa-check"></i> <b>3.3.30.</b> OP_Insert1 </a> </li> <li class="chapter " data-level="3.3.31" data-path="execuing_of_vdbec/op_close3.html"> <a href="../execuing_of_vdbec/op_close3.html"> <i class="fa fa-check"></i> <b>3.3.31.</b> OP_Close3 </a> </li> <li class="chapter " data-level="3.3.32" data-path="execuing_of_vdbec/op_integer3.html"> <a href="../execuing_of_vdbec/op_integer3.html"> <i class="fa fa-check"></i> <b>3.3.32.</b> OP_Integer3 </a> </li> <li class="chapter " data-level="3.3.33" data-path="execuing_of_vdbec/op_setcookie1.html"> <a href="../execuing_of_vdbec/op_setcookie1.html"> <i class="fa fa-check"></i> <b>3.3.33.</b> OP_SetCookie1 </a> </li> <li class="chapter " data-level="3.3.34" data-path="execuing_of_vdbec/op_parseschema.html"> <a href="../execuing_of_vdbec/op_parseschema.html"> <i class="fa fa-check"></i> <b>3.3.34.</b> OP_ParseSchema </a> </li> <li class="chapter " data-level="3.3.35" data-path="execuing_of_vdbec/op_halt.html"> <a href="../execuing_of_vdbec/op_halt.html"> <i class="fa fa-check"></i> <b>3.3.35.</b> OP_Halt </a> </li> </ul> </li> <li class="chapter " data-level="3.4" data-path="execuing_procedure_of_vdbe/README.html"> <a href="../execuing_procedure_of_vdbe/README.html"> <i class="fa fa-check"></i> <b>3.4.</b> SQLite执行过程 </a> </li> <li class="chapter " data-level="3.5" data-path="vdbeauxc/preview.html"> <a href="../vdbeauxc/preview.html"> <i class="fa fa-check"></i> <b>3.5.</b> vdbeaux.c源码概览 </a> </li> <li class="chapter " data-level="3.6" data-path="vdbeauxc/intrduceandanaly.html"> <a href="../vdbeauxc/intrduceandanaly.html"> <i class="fa fa-check"></i> <b>3.6.</b> vdbeaux.c 源码介绍与分析 </a> <ul class="articles"> <li class="chapter " data-level="3.6.1" data-path="vdbeauxc/createfame.html"> <a href="../vdbeauxc/createfame.html"> <i class="fa fa-check"></i> <b>3.6.1.</b> 创建vdbe结构体 </a> </li> <li class="chapter " data-level="3.6.2" data-path="vdbeauxc/prepare.html"> <a href="../vdbeauxc/prepare.html"> <i class="fa fa-check"></i> <b>3.6.2.</b> vdbe准备阶段 </a> <ul class="articles"> <li class="chapter " data-level="3.6.2.1" data-path="vdbeauxc/update.html"> <a href="../vdbeauxc/update.html"> <i class="fa fa-check"></i> <b>3.6.2.1.</b> 相关修改函数 </a> </li> <li class="chapter " data-level="3.6.2.2" data-path="vdbeauxc/assemble.html"> <a href="../vdbeauxc/assemble.html"> <i class="fa fa-check"></i> <b>3.6.2.2.</b> 配置函数 </a> </li> <li class="chapter " data-level="3.6.2.3" data-path="vdbeauxc/xigou.html"> <a href="../vdbeauxc/xigou.html"> <i class="fa fa-check"></i> <b>3.6.2.3.</b> 析构函数 </a> </li> </ul> </li> <li class="chapter " data-level="3.6.3" data-path="vdbeauxc/debug.html"> <a href="../vdbeauxc/debug.html"> <i class="fa fa-check"></i> <b>3.6.3.</b> debug模式 </a> <ul class="articles"> <li class="chapter " data-level="3.6.3.1" data-path="vdbeauxc/deleframe.html"> <a href="../vdbeauxc/deleframe.html"> <i class="fa fa-check"></i> <b>3.6.3.1.</b> 删除vdbe结构体 </a> </li> <li class="chapter " data-level="3.6.3.2" data-path="vdbeauxc/list.html"> <a href="../vdbeauxc/list.html"> <i class="fa fa-check"></i> <b>3.6.3.2.</b> 列出虚拟机中的程序清单 </a> </li> <li class="chapter " data-level="3.6.3.3" data-path="vdbeauxc/display.html"> <a href="../vdbeauxc/display.html"> <i class="fa fa-check"></i> <b>3.6.3.3.</b> 显示部分 </a> </li> </ul> </li> <li class="chapter " data-level="3.6.4" data-path="vdbeauxc/alloc.html"> <a href="../vdbeauxc/alloc.html"> <i class="fa fa-check"></i> <b>3.6.4.</b> 分配空间 </a> </li> <li class="chapter " data-level="3.6.5" data-path="vdbeauxc/init.html"> <a href="../vdbeauxc/init.html"> <i class="fa fa-check"></i> <b>3.6.5.</b> 初始化vdbe </a> </li> <li class="chapter " data-level="3.6.6" data-path="vdbeauxc/makeready.html"> <a href="../vdbeauxc/makeready.html"> <i class="fa fa-check"></i> <b>3.6.6.</b> 执行前的准备 </a> </li> <li class="chapter " data-level="3.6.7" data-path="vdbeauxc/free.html"> <a href="../vdbeauxc/free.html"> <i class="fa fa-check"></i> <b>3.6.7.</b> 释放资源 </a> </li> <li class="chapter " data-level="3.6.8" data-path="vdbeauxc/process.html"> <a href="../vdbeauxc/process.html"> <i class="fa fa-check"></i> <b>3.6.8.</b> vdbe执行中的处理 </a> <ul class="articles"> <li class="chapter " data-level="3.6.8.1" data-path="vdbeauxc/halt.html"> <a href="../vdbeauxc/halt.html"> <i class="fa fa-check"></i> <b>3.6.8.1.</b> 函数sqlite3VdbeHalt </a> </li> <li class="chapter " data-level="3.6.8.2" data-path="vdbeauxc/stepresult.html"> <a href="../vdbeauxc/stepresult.html"> <i class="fa fa-check"></i> <b>3.6.8.2.</b> 函数sqlite3VdbeResetStepResult </a> </li> <li class="chapter " data-level="3.6.8.3" data-path="vdbeauxc/transfererror.html"> <a href="../vdbeauxc/transfererror.html"> <i class="fa fa-check"></i> <b>3.6.8.3.</b> 函数sqlite3VdbeTransferError </a> </li> <li class="chapter " data-level="3.6.8.4" data-path="vdbeauxc/reset.html"> <a href="../vdbeauxc/reset.html"> <i class="fa fa-check"></i> <b>3.6.8.4.</b> 函数sqlite3VdbeReset </a> </li> <li class="chapter " data-level="3.6.8.5" data-path="vdbeauxc/finalize.html"> <a href="../vdbeauxc/finalize.html"> <i class="fa fa-check"></i> <b>3.6.8.5.</b> 函数sqlite3VdbeFinalize </a> </li> <li class="chapter " data-level="3.6.8.6" data-path="vdbeauxc/deleobjectanddelete.html"> <a href="../vdbeauxc/deleobjectanddelete.html"> <i class="fa fa-check"></i> <b>3.6.8.6.</b> 函数sqlite3VdbeDeleteObject和sqlite3VdbeDelete </a> </li> <li class="chapter " data-level="3.6.8.7" data-path="vdbeauxc/moveto.html"> <a href="../vdbeauxc/moveto.html"> <i class="fa fa-check"></i> <b>3.6.8.7.</b> 函数sqlite3VdbeCursorMoveto </a> </li> <li class="chapter " data-level="3.6.8.8" data-path="vdbeauxc/flowswap.html"> <a href="../vdbeauxc/flowswap.html"> <i class="fa fa-check"></i> <b>3.6.8.8.</b> 函数u64 floatSwap </a> </li> <li class="chapter " data-level="3.6.8.9" data-path="vdbeauxc/serialput.html"> <a href="../vdbeauxc/serialput.html"> <i class="fa fa-check"></i> <b>3.6.8.9.</b> 函数sqlite3VdbeSerialPut </a> </li> <li class="chapter " data-level="3.6.8.10" data-path="vdbeauxc/unpackedrecord.html"> <a href="../vdbeauxc/unpackedrecord.html"> <i class="fa fa-check"></i> <b>3.6.8.10.</b> 函数sqlite3VdbeAllocUnpackedRecord </a> </li> <li class="chapter " data-level="3.6.8.11" data-path="vdbeauxc/statements.html"> <a href="../vdbeauxc/statements.html"> <i class="fa fa-check"></i> <b>3.6.8.11.</b> 函数sqlite3ExpirePreparedStatements </a> </li> <li class="chapter " data-level="3.6.8.12" data-path="vdbeauxc/setvarmask.html"> <a href="../vdbeauxc/setvarmask.html"> <i class="fa fa-check"></i> <b>3.6.8.12.</b> 函数sqlite3VdbeSetVarmask </a> </li> </ul> </li> </ul> </li> <li class="chapter " data-level="3.7" data-path="vdbesort/preview2.html"> <a href="../vdbesort/preview2.html"> <i class="fa fa-check"></i> <b>3.7.</b> vdbesort.c源码概览 </a> <ul class="articles"> <li class="chapter " data-level="3.7.1" data-path="vdbesort/nintrodution.html"> <a href="../vdbesort/nintrodution.html"> <i class="fa fa-check"></i> <b>3.7.1.</b> N-路归并的算法及数据结构说明 </a> </li> <li class="chapter " data-level="3.7.2" data-path="vdbesort/structs.html"> <a href="../vdbesort/structs.html"> <i class="fa fa-check"></i> <b>3.7.2.</b> 结构体定义 </a> </li> <li class="chapter " data-level="3.7.3" data-path="vdbesort/functions.html"> <a href="../vdbesort/functions.html"> <i class="fa fa-check"></i> <b>3.7.3.</b> 函数定义 </a> </li> </ul> </li> </ul> </li> <li class="chapter active" data-level="4" data-path="srcAnaly/README.html"> <a href="../srcAnaly/README.html"> <i class="fa fa-check"></i> <b>4.</b> 关系查询处理器 </a> <ul class="articles"> <li class="chapter " data-level="4.1" data-path="srcAnaly/selectExec.html"> <a href="../srcAnaly/selectExec.html"> <i class="fa fa-check"></i> <b>4.1.</b> 查询解析和授权 </a> <ul class="articles"> <li class="chapter " data-level="4.1.1" data-path="sqlite/sqlasunderstoodbysqlite.html"> <a href="../sqlite/sqlasunderstoodbysqlite.html"> <i class="fa fa-check"></i> <b>4.1.1.</b> SQLite中的SQL语句 </a> </li> <li class="chapter " data-level="4.1.2" data-path="dir2/selectgrammar.html"> <a href="../dir2/selectgrammar.html"> <i class="fa fa-check"></i> <b>4.1.2.</b> SELECT的语法图 </a> </li> <li class="chapter " data-level="4.1.3" data-path="dir2/selectexe.html"> <a href="../dir2/selectexe.html"> <i class="fa fa-check"></i> <b>4.1.3.</b> SQLite中SQL语句执行步骤 </a> </li> <li class="chapter " data-level="4.1.4" data-path="srcAnaly/keyFunc.html"> <a href="../srcAnaly/keyFunc.html"> <i class="fa fa-check"></i> <b>4.1.4.</b> sqlite查询处理的关键函数 </a> </li> <li class="chapter " data-level="4.1.5" data-path="dir2/selecttree.html"> <a href="../dir2/selecttree.html"> <i class="fa fa-check"></i> <b>4.1.5.</b> 查询语法树 </a> </li> <li class="chapter " data-level="4.1.6" data-path="srcanaly/from.html"> <a href="../srcanaly/from.html"> <i class="fa fa-check"></i> <b>4.1.6.</b> FROM子句 </a> <ul class="articles"> <li class="chapter " data-level="4.1.6.1" data-path="srcanaly/sqlitefrom.html"> <a href="../srcanaly/sqlitefrom.html"> <i class="fa fa-check"></i> <b>4.1.6.1.</b> SQLite中FROM子句的使用 </a> </li> <li class="chapter " data-level="4.1.6.2" data-path="dir3/sqliteselectcolumnsfromexprlist.html"> <a href="../dir3/sqliteselectcolumnsfromexprlist.html"> <i class="fa fa-check"></i> <b>4.1.6.2.</b> SQLite中FROM子句的实现 </a> </li> </ul> </li> <li class="chapter " data-level="4.1.7" data-path="dir3/articledir.html"> <a href="../dir3/articledir.html"> <i class="fa fa-check"></i> <b>4.1.7.</b> ON子句 </a> <ul class="articles"> <li class="chapter " data-level="4.1.7.1" data-path="dir3/on.html"> <a href="../dir3/on.html"> <i class="fa fa-check"></i> <b>4.1.7.1.</b> SQLite中ON子句的使用 </a> </li> <li class="chapter " data-level="4.1.7.2" data-path="dir3/sqlitesqlite3jointypesetjoinexprsqliteprocessjoin.html"> <a href="../dir3/sqlitesqlite3jointypesetjoinexprsqliteprocessjoin.html"> <i class="fa fa-check"></i> <b>4.1.7.2.</b> SQLite中ON子句的实现 </a> </li> </ul> </li> <li class="chapter " data-level="4.1.8" data-path="authc/README.html"> <a href="../authc/README.html"> <i class="fa fa-check"></i> <b>4.1.8.</b> 访问授权 </a> <ul class="articles"> <li class="chapter " data-level="4.1.8.1" data-path="srcanaly/authorization.html"> <a href="../srcanaly/authorization.html"> <i class="fa fa-check"></i> <b>4.1.8.1.</b> SQLite的授权检查实现 </a> </li> <li class="chapter " data-level="4.1.8.2" data-path="authc/set.html"> <a href="../authc/set.html"> <i class="fa fa-check"></i> <b>4.1.8.2.</b> 设置或清除访问授权 </a> </li> <li class="chapter " data-level="4.1.8.3" data-path="authc/authbadreturncode.html"> <a href="../authc/authbadreturncode.html"> <i class="fa fa-check"></i> <b>4.1.8.3.</b> 授权返回一个非法的值 </a> </li> <li class="chapter " data-level="4.1.8.4" data-path="authc/authreadcol.html"> <a href="../authc/authreadcol.html"> <i class="fa fa-check"></i> <b>4.1.8.4.</b> 验证数据库中表的列信息是否可访问 </a> </li> <li class="chapter " data-level="4.1.8.5" data-path="authc/tk_column.html"> <a href="../authc/tk_column.html"> <i class="fa fa-check"></i> <b>4.1.8.5.</b> 验证解析树中TK_COLUMN表达式是否可访问 </a> </li> <li class="chapter " data-level="4.1.8.6" data-path="authc/authcheck.html"> <a href="../authc/authcheck.html"> <i class="fa fa-check"></i> <b>4.1.8.6.</b> 使用给定的代码和参数的授权检查 </a> </li> <li class="chapter " data-level="4.1.8.7" data-path="authc/authcontext.html"> <a href="../authc/authcontext.html"> <i class="fa fa-check"></i> <b>4.1.8.7.</b> 利用栈存储解析树的授权内容 </a> </li> </ul> </li> </ul> </li> <li class="chapter " data-level="4.2" data-path="dir3/selectsourcedir.html"> <a href="../dir3/selectsourcedir.html"> <i class="fa fa-check"></i> <b>4.2.</b> 查询重写 </a> <ul class="articles"> <li class="chapter " data-level="4.2.1" data-path="dir3/rewritefunction.html"> <a href="../dir3/rewritefunction.html"> <i class="fa fa-check"></i> <b>4.2.1.</b> 重写器的主要功能 </a> </li> <li class="chapter " data-level="4.2.2" data-path="optimalandquery/optimalquery.html"> <a href="../optimalandquery/optimalquery.html"> <i class="fa fa-check"></i> <b>4.2.2.</b> SQLite查询重写 </a> <ul class="articles"> <li class="chapter " data-level="4.2.2.1" data-path="optimalandquery/transcation.html"> <a href="../optimalandquery/transcation.html"> <i class="fa fa-check"></i> <b>4.2.2.1.</b> 几类查询重写 </a> </li> <li class="chapter " data-level="4.2.2.2" data-path="optimalandquery/compress.html"> <a href="../optimalandquery/compress.html"> <i class="fa fa-check"></i> <b>4.2.2.2.</b> 子查询扁平化 </a> </li> <li class="chapter " data-level="4.2.2.3" data-path="optimalandquery/link.html"> <a href="../optimalandquery/link.html"> <i class="fa fa-check"></i> <b>4.2.2.3.</b> 连接查询 </a> </li> </ul> </li> <li class="chapter " data-level="4.2.3" data-path="dir3/wheredir.html"> <a href="../dir3/wheredir.html"> <i class="fa fa-check"></i> <b>4.2.3.</b> WHERE子句 </a> <ul class="articles"> <li class="chapter " data-level="4.2.3.1" data-path="dir3/where.html"> <a href="../dir3/where.html"> <i class="fa fa-check"></i> <b>4.2.3.1.</b> WHERE子句具体使用 </a> </li> <li class="chapter " data-level="4.2.3.2" data-path="dir3/sqliteaddwheretermselectinnerloop.html"> <a href="../dir3/sqliteaddwheretermselectinnerloop.html"> <i class="fa fa-check"></i> <b>4.2.3.2.</b> SQLite中使用addWhereTerm函数和selectInnerLoop函数 </a> </li> </ul> </li> <li class="chapter " data-level="4.2.4" data-path="dir3/group_bydir.html"> <a href="../dir3/group_bydir.html"> <i class="fa fa-check"></i> <b>4.2.4.</b> GROUP BY子句 </a> <ul class="articles"> <li class="chapter " data-level="4.2.4.1" data-path="dir3/group.html"> <a href="../dir3/group.html"> <i class="fa fa-check"></i> <b>4.2.4.1.</b> GROUP子句具体使用 </a> </li> <li class="chapter " data-level="4.2.4.2" data-path="dir3/sqlitefinalizeaggfunctions.html"> <a href="../dir3/sqlitefinalizeaggfunctions.html"> <i class="fa fa-check"></i> <b>4.2.4.2.</b> SQLite中finalizeAggFunctions函数 </a> </li> </ul> </li> <li class="chapter " data-level="4.2.5" data-path="dir3/havingdir.html"> <a href="../dir3/havingdir.html"> <i class="fa fa-check"></i> <b>4.2.5.</b> Having子句 </a> </li> <li class="chapter " data-level="4.2.6" data-path="dir3/distinctdir.html"> <a href="../dir3/distinctdir.html"> <i class="fa fa-check"></i> <b>4.2.6.</b> DISTINCT子句 </a> <ul class="articles"> <li class="chapter " data-level="4.2.6.1" data-path="dir3/361____alldistinct.html"> <a href="../dir3/361____alldistinct.html"> <i class="fa fa-check"></i> <b>4.2.6.1.</b> all和distinct子句 </a> </li> <li class="chapter " data-level="4.2.6.2" data-path="dir3/codedistinct.html"> <a href="../dir3/codedistinct.html"> <i class="fa fa-check"></i> <b>4.2.6.2.</b> codeDistinct函数 </a> </li> </ul> </li> <li class="chapter " data-level="4.2.7" data-path="dir3/order_bydir.html"> <a href="../dir3/order_bydir.html"> <i class="fa fa-check"></i> <b>4.2.7.</b> ORDER BY子句 </a> <ul class="articles"> <li class="chapter " data-level="4.2.7.1" data-path="dir3/order_by.html"> <a href="../dir3/order_by.html"> <i class="fa fa-check"></i> <b>4.2.7.1.</b> ORDER BY子句具体应用 </a> </li> <li class="chapter " data-level="4.2.7.2" data-path="dir3/sqlitemultiselectorderby.html"> <a href="../dir3/sqlitemultiselectorderby.html"> <i class="fa fa-check"></i> <b>4.2.7.2.</b> SQLite中multiSelectOrderBy函数 </a> </li> </ul> </li> <li class="chapter " data-level="4.2.8" data-path="dir3/limitdir.html"> <a href="../dir3/limitdir.html"> <i class="fa fa-check"></i> <b>4.2.8.</b> LIMIT子句 </a> <ul class="articles"> <li class="chapter " data-level="4.2.8.1" data-path="dir3/sqlitecomputelimitregisters.html"> <a href="../dir3/sqlitecomputelimitregisters.html"> <i class="fa fa-check"></i> <b>4.2.8.1.</b> SQLite中computeLimitRegisters函数 </a> </li> </ul> </li> <li class="chapter " data-level="4.2.9" data-path="dir3/offsetdir.html"> <a href="../dir3/offsetdir.html"> <i class="fa fa-check"></i> <b>4.2.9.</b> OFFSET子句 </a> </li> <li class="chapter " data-level="4.2.10" data-path="dir3/other.html"> <a href="../dir3/other.html"> <i class="fa fa-check"></i> <b>4.2.10.</b> 另外一些重要的函数 </a> <ul class="articles"> <li class="chapter " data-level="4.2.10.1" data-path="dir3/sqlite3selectprep.html"> <a href="../dir3/sqlite3selectprep.html"> <i class="fa fa-check"></i> <b>4.2.10.1.</b> sqlite3SelectPrep函数 </a> </li> <li class="chapter " data-level="4.2.10.2" data-path="dir3/sqlite3getvdbe.html"> <a href="../dir3/sqlite3getvdbe.html"> <i class="fa fa-check"></i> <b>4.2.10.2.</b> sqlite3GetVdbe函数 </a> </li> <li class="chapter " data-level="4.2.10.3" data-path="dir3/minmaxquery.html"> <a href="../dir3/minmaxquery.html"> <i class="fa fa-check"></i> <b>4.2.10.3.</b> minMaxQuery函数 </a> </li> </ul> </li> </ul> </li> <li class="chapter " data-level="4.3" data-path="queryoptiintro/queryoptiintro.html"> <a href="../queryoptiintro/queryoptiintro.html"> <i class="fa fa-check"></i> <b>4.3.</b> 查询优化器 </a> <ul class="articles"> <li class="chapter " data-level="4.3.1" data-path="queryoptiintro/queryoptiflow.html"> <a href="../queryoptiintro/queryoptiflow.html"> <i class="fa fa-check"></i> <b>4.3.1.</b> 查询优化流程 </a> </li> <li class="chapter " data-level="4.3.2" data-path="queryoptiintro/queryoptiop.html"> <a href="../queryoptiintro/queryoptiop.html"> <i class="fa fa-check"></i> <b>4.3.2.</b> SQLite中几种查询优化做的处理 </a> </li> <li class="chapter " data-level="4.3.3" data-path="queryoptiintro/queryoptistrategy.html"> <a href="../queryoptiintro/queryoptistrategy.html"> <i class="fa fa-check"></i> <b>4.3.3.</b> 查询扫描策略 </a> </li> <li class="chapter " data-level="4.3.4" data-path="queryoptiintro/costmodule.html"> <a href="../queryoptiintro/costmodule.html"> <i class="fa fa-check"></i> <b>4.3.4.</b> 查询策略代价模型及计算方式 </a> </li> <li class="chapter " data-level="4.3.5" data-path="analyzeanalyzec/README.html"> <a href="../analyzeanalyzec/README.html"> <i class="fa fa-check"></i> <b>4.3.5.</b> 与查询代价有关的处理-ANALYZE命令 </a> <ul class="articles"> <li class="chapter " data-level="4.3.5.1" data-path="analyzeanalyzec/analyzesql.html"> <a href="../analyzeanalyzec/analyzesql.html"> <i class="fa fa-check"></i> <b>4.3.5.1.</b> Analyze的SQL语法 </a> </li> <li class="chapter " data-level="4.3.5.2" data-path="analyzeanalyzec/analyze.html"> <a href="../analyzeanalyzec/analyze.html"> <i class="fa fa-check"></i> <b>4.3.5.2.</b> Analyze 命令接口 </a> </li> <li class="chapter " data-level="4.3.5.3" data-path="analyzeanalyzec/analyzedatabase.html"> <a href="../analyzeanalyzec/analyzedatabase.html"> <i class="fa fa-check"></i> <b>4.3.5.3.</b> analyzeDatabase函数 </a> </li> <li class="chapter " data-level="4.3.5.4" data-path="analyzeanalyzec/analyzetable.html"> <a href="../analyzeanalyzec/analyzetable.html"> <i class="fa fa-check"></i> <b>4.3.5.4.</b> analyzeTable函数 </a> </li> <li class="chapter " data-level="4.3.5.5" data-path="analyzeanalyzec/loadanalysis.html"> <a href="../analyzeanalyzec/loadanalysis.html"> <i class="fa fa-check"></i> <b>4.3.5.5.</b> loadAnalysis函数 </a> </li> <li class="chapter " data-level="4.3.5.6" data-path="analyzeanalyzec/analyzeonetable.html"> <a href="../analyzeanalyzec/analyzeonetable.html"> <i class="fa fa-check"></i> <b>4.3.5.6.</b> analyzeOneTable函数 </a> </li> <li class="chapter " data-level="4.3.5.7" data-path="analyzeanalyzec/stat3initstat3pushstat3get.html"> <a href="../analyzeanalyzec/stat3initstat3pushstat3get.html"> <i class="fa fa-check"></i> <b>4.3.5.7.</b> stat3Init函数,stat3Push函数,stat3Get函数 </a> </li> <li class="chapter " data-level="4.3.5.8" data-path="analyzeanalyzec/other.html"> <a href="../analyzeanalyzec/other.html"> <i class="fa fa-check"></i> <b>4.3.5.8.</b> 其他用到的一些函数 </a> </li> </ul> </li> <li class="chapter " data-level="4.3.6" data-path="wherec/README.html"> <a href="../wherec/README.html"> <i class="fa fa-check"></i> <b>4.3.6.</b> SQLite中查询优化的具体实现 </a> <ul class="articles"> <li class="chapter " data-level="4.3.6.1" data-path="wherec/sqlite3wherebegin.html"> <a href="../wherec/sqlite3wherebegin.html"> <i class="fa fa-check"></i> <b>4.3.6.1.</b> sqlite3WhereBegin函数 </a> </li> <li class="chapter " data-level="4.3.6.2" data-path="wherec/expranalyzeall.html"> <a href="../wherec/expranalyzeall.html"> <i class="fa fa-check"></i> <b>4.3.6.2.</b> exprAnalyzeAll函数 </a> </li> <li class="chapter " data-level="4.3.6.3" data-path="wherec/expranalyze.html"> <a href="../wherec/expranalyze.html"> <i class="fa fa-check"></i> <b>4.3.6.3.</b> exprAnalyze函数 </a> </li> <li class="chapter " data-level="4.3.6.4" data-path="wherec/bestbtreeindex.html"> <a href="../wherec/bestbtreeindex.html"> <i class="fa fa-check"></i> <b>4.3.6.4.</b> bestBtreeIndex函数 </a> </li> <li class="chapter " data-level="4.3.6.5" data-path="wherec/bestorclauseindex.html"> <a href="../wherec/bestorclauseindex.html"> <i class="fa fa-check"></i> <b>4.3.6.5.</b> bestOrClauseIndex函数 </a> </li> <li class="chapter " data-level="4.3.6.6" data-path="wherec/whererangescanest.html"> <a href="../wherec/whererangescanest.html"> <i class="fa fa-check"></i> <b>4.3.6.6.</b> whereRangeScanEst函数 </a> </li> <li class="chapter " data-level="4.3.6.7" data-path="wherec/codeoneloopstart.html"> <a href="../wherec/codeoneloopstart.html"> <i class="fa fa-check"></i> <b>4.3.6.7.</b> codeOneLoopStart函数 </a> </li> <li class="chapter " data-level="4.3.6.8" data-path="wherec/sqlite3whereend.html"> <a href="../wherec/sqlite3whereend.html"> <i class="fa fa-check"></i> <b>4.3.6.8.</b> sqlite3WhereEnd函数 </a> </li> </ul> </li> <li class="chapter " data-level="4.3.7" data-path="wherec/wherec.html"> <a href="../wherec/wherec.html"> <i class="fa fa-check"></i> <b>4.3.7.</b> where.c概述 </a> <ul class="articles"> <li class="chapter " data-level="4.3.7.1" data-path="wherec/wherecInfo/wherecprocess.html"> <a href="../wherec/wherecInfo/wherecprocess.html"> <i class="fa fa-check"></i> <b>4.3.7.1.</b> where.c的执行过程 </a> </li> <li class="chapter " data-level="4.3.7.2" data-path="wherec/wherecInfo/structandfunc.html"> <a href="../wherec/wherecInfo/structandfunc.html"> <i class="fa fa-check"></i> <b>4.3.7.2.</b> where.c中主要结构体和函数调用关系 </a> <ul class="articles"> <li class="chapter " data-level="4.3.7.2.1" data-path="wherec/wherecInfo/struct.html"> <a href="../wherec/wherecInfo/struct.html"> <i class="fa fa-check"></i> <b>4.3.7.2.1.</b> 主要结构体 </a> </li> <li class="chapter " data-level="4.3.7.2.2" data-path="wherec/wherecInfo/func.html"> <a href="../wherec/wherecInfo/func.html"> <i class="fa fa-check"></i> <b>4.3.7.2.2.</b> 主要函数调用关系 </a> </li> </ul> </li> <li class="chapter " data-level="4.3.7.3" data-path="wherec/where.html"> <a href="../wherec/where.html"> <i class="fa fa-check"></i> <b>4.3.7.3.</b> where子句的查询优化 </a> <ul class="articles"> <li class="chapter " data-level="4.3.7.3.1" data-path="wherec/whereOptimize/whereanalyze.html"> <a href="../wherec/whereOptimize/whereanalyze.html"> <i class="fa fa-check"></i> <b>4.3.7.3.1.</b> WHERE子句分析 </a> </li> <li class="chapter " data-level="4.3.7.3.2" data-path="wherec/whereOptimize/between.html"> <a href="../wherec/whereOptimize/between.html"> <i class="fa fa-check"></i> <b>4.3.7.3.2.</b> BETWEEN语句优化 </a> </li> <li class="chapter " data-level="4.3.7.3.3" data-path="wherec/whereOptimize/or.html"> <a href="../wherec/whereOptimize/or.html"> <i class="fa fa-check"></i> <b>4.3.7.3.3.</b> OR语句优化 </a> </li> <li class="chapter " data-level="4.3.7.3.4" data-path="wherec/whereOptimize/like.html"> <a href="../wherec/whereOptimize/like.html"> <i class="fa fa-check"></i> <b>4.3.7.3.4.</b> LIKE语句优化 </a> </li> <li class="chapter " data-level="4.3.7.3.5" data-path="wherec/whereOptimize/skip-scan.html"> <a href="../wherec/whereOptimize/skip-scan.html"> <i class="fa fa-check"></i> <b>4.3.7.3.5.</b> Skip-Scan优化 </a> </li> <li class="chapter " data-level="4.3.7.3.6" data-path="wherec/whereOptimize/selmultindex.html"> <a href="../wherec/whereOptimize/selmultindex.html"> <i class="fa fa-check"></i> <b>4.3.7.3.6.</b> 多重索引的选择 </a> </li> <li class="chapter " data-level="4.3.7.3.7" data-path="wherec/whereOptimize/coverindex.html"> <a href="../wherec/whereOptimize/coverindex.html"> <i class="fa fa-check"></i> <b>4.3.7.3.7.</b> 覆盖索引 </a> </li> <li class="chapter " data-level="4.3.7.3.8" data-path="wherec/whereOptimize/autoindex.html"> <a href="../wherec/whereOptimize/autoindex.html"> <i class="fa fa-check"></i> <b>4.3.7.3.8.</b> 自动索引 </a> </li> </ul> </li> <li class="chapter " data-level="4.3.7.4" data-path="wherec/wherecsummary.html"> <a href="../wherec/wherecsummary.html"> <i class="fa fa-check"></i> <b>4.3.7.4.</b> wherecSummary </a> </li> </ul> </li> <li class="chapter " data-level="4.3.8" data-path="queryoptiintro/queryoptisummary.html"> <a href="../queryoptiintro/queryoptisummary.html"> <i class="fa fa-check"></i> <b>4.3.8.</b> SQLite中查询优化方式的总结 </a> </li> </ul> </li> <li class="chapter " data-level="4.4" data-path="dir2/introduction.html"> <a href="../dir2/introduction.html"> <i class="fa fa-check"></i> <b>4.4.</b> 查询执行器 </a> <ul class="articles"> <li class="chapter " data-level="4.4.1" data-path="dir2/dataalter.html"> <a href="../dir2/dataalter.html"> <i class="fa fa-check"></i> <b>4.4.1.</b> 数据修改语句 </a> </li> <li class="chapter " data-level="4.4.2" data-path="buildc/buildcsqlite.html"> <a href="../buildc/buildcsqlite.html"> <i class="fa fa-check"></i> <b>4.4.2.</b> Build.c分析 </a> <ul class="articles"> <li class="chapter " data-level="4.4.2.1" data-path="buildc/function.html"> <a href="../buildc/function.html"> <i class="fa fa-check"></i> <b>4.4.2.1.</b> 实现的功能 </a> </li> <li class="chapter " data-level="4.4.2.2" data-path="function/achieve.html"> <a href="../function/achieve.html"> <i class="fa fa-check"></i> <b>4.4.2.2.</b> 具体功能的实现 </a> <ul class="articles"> <li class="chapter " data-level="4.4.2.2.1" data-path="function/createtable.html"> <a href="../function/createtable.html"> <i class="fa fa-check"></i> <b>4.4.2.2.1.</b> 表的创建 </a> </li> <li class="chapter " data-level="4.4.2.2.2" data-path="function/del.html"> <a href="../function/del.html"> <i class="fa fa-check"></i> <b>4.4.2.2.2.</b> 表的删除 </a> </li> <li class="chapter " data-level="4.4.2.2.3" data-path="function/othertable.html"> <a href="../function/othertable.html"> <i class="fa fa-check"></i> <b>4.4.2.2.3.</b> 与表相关的操作 </a> </li> <li class="chapter " data-level="4.4.2.2.4" data-path="function/createView.html"> <a href="../function/createView.html"> <i class="fa fa-check"></i> <b>4.4.2.2.4.</b> 视图的创建 </a> </li> <li class="chapter " data-level="4.4.2.2.5" data-path="index/create.html"> <a href="../index/create.html"> <i class="fa fa-check"></i> <b>4.4.2.2.5.</b> 索引的创建 </a> </li> <li class="chapter " data-level="4.4.2.2.6" data-path="index/select.html"> <a href="../index/select.html"> <i class="fa fa-check"></i> <b>4.4.2.2.6.</b> 索引的删除 </a> </li> <li class="chapter " data-level="4.4.2.2.7" data-path="index/free.html"> <a href="../index/free.html"> <i class="fa fa-check"></i> <b>4.4.2.2.7.</b> 释放索引(与删除索引相关) </a> </li> <li class="chapter " data-level="4.4.2.2.8" data-path="index/other.html"> <a href="../index/other.html"> <i class="fa fa-check"></i> <b>4.4.2.2.8.</b> 与索引相关的其他操作 </a> </li> <li class="chapter " data-level="4.4.2.2.9" data-path="id/idcreate.html"> <a href="../id/idcreate.html"> <i class="fa fa-check"></i> <b>4.4.2.2.9.</b> ID序列的创建 </a> </li> <li class="chapter " data-level="4.4.2.2.10" data-path="id/idselect.html"> <a href="../id/idselect.html"> <i class="fa fa-check"></i> <b>4.4.2.2.10.</b> ID序列的删除 </a> </li> <li class="chapter " data-level="4.4.2.2.11" data-path="id/idother.html"> <a href="../id/idother.html"> <i class="fa fa-check"></i> <b>4.4.2.2.11.</b> ID序列其他操作 </a> </li> <li class="chapter " data-level="4.4.2.2.12" data-path="routine/routinestart.html"> <a href="../routine/routinestart.html"> <i class="fa fa-check"></i> <b>4.4.2.2.12.</b> 事务的开始 </a> </li> <li class="chapter " data-level="4.4.2.2.13" data-path="routine/routinesubmit.html"> <a href="../routine/routinesubmit.html"> <i class="fa fa-check"></i> <b>4.4.2.2.13.</b> 事务的提交 </a> </li> <li class="chapter " data-level="4.4.2.2.14" data-path="routine/routinerollback.html"> <a href="../routine/routinerollback.html"> <i class="fa fa-check"></i> <b>4.4.2.2.14.</b> 事务的回滚 </a> </li> <li class="chapter " data-level="4.4.2.2.15" data-path="function/temporarydb.html"> <a href="../function/temporarydb.html"> <i class="fa fa-check"></i> <b>4.4.2.2.15.</b> 临时数据库 </a> </li> <li class="chapter " data-level="4.4.2.2.16" data-path="function/write.html"> <a href="../function/write.html"> <i class="fa fa-check"></i> <b>4.4.2.2.16.</b> 写操作 </a> </li> <li class="chapter " data-level="4.4.2.2.17" data-path="function/exception.html"> <a href="../function/exception.html"> <i class="fa fa-check"></i> <b>4.4.2.2.17.</b> 异常检查 </a> </li> </ul> </li> </ul> </li> <li class="chapter " data-level="4.4.3" data-path="insertc/README.html"> <a href="../insertc/README.html"> <i class="fa fa-check"></i> <b>4.4.3.</b> Insert.c解析 </a> <ul class="articles"> <li class="chapter " data-level="4.4.3.1" data-path="insertc/insert.html"> <a href="../insertc/insert.html"> <i class="fa fa-check"></i> <b>4.4.3.1.</b> insert的主要关系 </a> </li> <li class="chapter " data-level="4.4.3.2" data-path="insertc/sqlite3opentable.html"> <a href="../insertc/sqlite3opentable.html"> <i class="fa fa-check"></i> <b>4.4.3.2.</b> sqlite3OpenTable() </a> </li> <li class="chapter " data-level="4.4.3.3" data-path="insertc/sqlite3indexaffinitystr.html"> <a href="../insertc/sqlite3indexaffinitystr.html"> <i class="fa fa-check"></i> <b>4.4.3.3.</b> sqlite3IndexAffinityStr() </a> </li> <li class="chapter " data-level="4.4.3.4" data-path="insertc/sqlite3tableaffinitystr.html"> <a href="../insertc/sqlite3tableaffinitystr.html"> <i class="fa fa-check"></i> <b>4.4.3.4.</b> sqlite3TableAffinityStr() </a> </li> <li class="chapter " data-level="4.4.3.5" data-path="insertc/static_int_readstable.html"> <a href="../insertc/static_int_readstable.html"> <i class="fa fa-check"></i> <b>4.4.3.5.</b> static int readsTable() </a> </li> <li class="chapter " data-level="4.4.3.6" data-path="insertc/static_int_autoincbegin.html"> <a href="../insertc/static_int_autoincbegin.html"> <i class="fa fa-check"></i> <b>4.4.3.6.</b> static int autoIncBegin() </a> </li> <li class="chapter " data-level="4.4.3.7" data-path="insertc/void_sqlite3autoincrementbegin.html"> <a href="../insertc/void_sqlite3autoincrementbegin.html"> <i class="fa fa-check"></i> <b>4.4.3.7.</b> void sqlite3AutoincrementBegin() </a> </li> <li class="chapter " data-level="4.4.3.8" data-path="insertc/static_void_autoincstep.html"> <a href="../insertc/static_void_autoincstep.html"> <i class="fa fa-check"></i> <b>4.4.3.8.</b> static void autoIncStep() </a> </li> <li class="chapter " data-level="4.4.3.9" data-path="insertc/sqlite3autoincrementend.html"> <a href="../insertc/sqlite3autoincrementend.html"> <i class="fa fa-check"></i> <b>4.4.3.9.</b> sqlite3AutoincrementEnd() </a> </li> <li class="chapter " data-level="4.4.3.10" data-path="insertc/xferoptimization.html"> <a href="../insertc/xferoptimization.html"> <i class="fa fa-check"></i> <b>4.4.3.10.</b> xferOptimization() </a> </li> <li class="chapter " data-level="4.4.3.11" data-path="insertc/sqlite3insert.html"> <a href="../insertc/sqlite3insert.html"> <i class="fa fa-check"></i> <b>4.4.3.11.</b> sqlite3Insert() </a> </li> <li class="chapter " data-level="4.4.3.12" data-path="insertc/sqlite3generateconstraintchecks.html"> <a href="../insertc/sqlite3generateconstraintchecks.html"> <i class="fa fa-check"></i> <b>4.4.3.12.</b> sqlite3GenerateConstraintChecks() </a> </li> <li class="chapter " data-level="4.4.3.13" data-path="insertc/sqlite3completeinsertion.html"> <a href="../insertc/sqlite3completeinsertion.html"> <i class="fa fa-check"></i> <b>4.4.3.13.</b> sqlite3CompleteInsertion() </a> </li> <li class="chapter " data-level="4.4.3.14" data-path="insertc/sqlite3opentableandindices.html"> <a href="../insertc/sqlite3opentableandindices.html"> <i class="fa fa-check"></i> <b>4.4.3.14.</b> sqlite3OpenTableAndIndices() </a> </li> <li class="chapter " data-level="4.4.3.15" data-path="insertc/xfercompatiblecollation.html"> <a href="../insertc/xfercompatiblecollation.html"> <i class="fa fa-check"></i> <b>4.4.3.15.</b> xferCompatibleCollation() </a> </li> <li class="chapter " data-level="4.4.3.16" data-path="insertc/xfercompatibleindex.html"> <a href="../insertc/xfercompatibleindex.html"> <i class="fa fa-check"></i> <b>4.4.3.16.</b> xferCompatibleIndex() </a> </li> </ul> </li> <li class="chapter " data-level="4.4.4" data-path="deletecupdatec/READMEG22.html"> <a href="../deletecupdatec/READMEG22.html"> <i class="fa fa-check"></i> <b>4.4.4.</b> 分析delete.c和update.c </a> <ul class="articles"> <li class="chapter " data-level="4.4.4.1" data-path="deletecupdatec/cast.html"> <a href="../deletecupdatec/cast.html"> <i class="fa fa-check"></i> <b>4.4.4.1.</b> CAST函数 </a> </li> <li class="chapter " data-level="4.4.4.2" data-path="deletecupdatec/escape.html"> <a href="../deletecupdatec/escape.html"> <i class="fa fa-check"></i> <b>4.4.4.2.</b> ESCAPE </a> </li> <li class="chapter " data-level="4.4.4.3" data-path="deletecupdatec/likeglob.html"> <a href="../deletecupdatec/likeglob.html"> <i class="fa fa-check"></i> <b>4.4.4.3.</b> Like和Glob </a> </li> <li class="chapter " data-level="4.4.4.4" data-path="deletecupdatec/isnull.html"> <a href="../deletecupdatec/isnull.html"> <i class="fa fa-check"></i> <b>4.4.4.4.</b> ISNULL </a> </li> <li class="chapter " data-level="4.4.4.5" data-path="deletecupdatec/between.html"> <a href="../deletecupdatec/between.html"> <i class="fa fa-check"></i> <b>4.4.4.5.</b> between </a> </li> <li class="chapter " data-level="4.4.4.6" data-path="deletecupdatec/exist.html"> <a href="../deletecupdatec/exist.html"> <i class="fa fa-check"></i> <b>4.4.4.6.</b> EXISTS </a> </li> <li class="chapter " data-level="4.4.4.7" data-path="deletecupdatec/case_when.html"> <a href="../deletecupdatec/case_when.html"> <i class="fa fa-check"></i> <b>4.4.4.7.</b> case when </a> </li> <li class="chapter " data-level="4.4.4.8" data-path="deletecupdatec/raise.html"> <a href="../deletecupdatec/raise.html"> <i class="fa fa-check"></i> <b>4.4.4.8.</b> RAISE()函数 </a> </li> </ul> </li> <li class="chapter " data-level="4.4.5" data-path="deletecupdatec/delete.html"> <a href="../deletecupdatec/delete.html"> <i class="fa fa-check"></i> <b>4.4.5.</b> Delete.c中主要函数的实现及功能 </a> <ul class="articles"> <li class="chapter " data-level="4.4.5.1" data-path="deletecupdatec/sqlite3srclistlookup.html"> <a href="../deletecupdatec/sqlite3srclistlookup.html"> <i class="fa fa-check"></i> <b>4.4.5.1.</b> sqlite3SrcListLookup()函数 </a> </li> <li class="chapter " data-level="4.4.5.2" data-path="deletecupdatec/sqlite3isreadonly.html"> <a href="../deletecupdatec/sqlite3isreadonly.html"> <i class="fa fa-check"></i> <b>4.4.5.2.</b> sqlite3IsReadOnly()函数 </a> </li> <li class="chapter " data-level="4.4.5.3" data-path="deletecupdatec/sqlite3materializeview.html"> <a href="../deletecupdatec/sqlite3materializeview.html"> <i class="fa fa-check"></i> <b>4.4.5.3.</b> sqlite3MaterializeView()函数 </a> </li> <li class="chapter " data-level="4.4.5.4" data-path="deletecupdatec/sqlite3limitwhere.html"> <a href="../deletecupdatec/sqlite3limitwhere.html"> <i class="fa fa-check"></i> <b>4.4.5.4.</b> sqlite3LimitWhere()函数 </a> </li> <li class="chapter " data-level="4.4.5.5" data-path="deletecupdatec/sqlite3deletefrom.html"> <a href="../deletecupdatec/sqlite3deletefrom.html"> <i class="fa fa-check"></i> <b>4.4.5.5.</b> sqlite3DeleteFrom()函数 </a> </li> <li class="chapter " data-level="4.4.5.6" data-path="deletecupdatec/sqlite3generaterowdelete.html"> <a href="../deletecupdatec/sqlite3generaterowdelete.html"> <i class="fa fa-check"></i> <b>4.4.5.6.</b> sqlite3GenerateRowDelete()函数 </a> </li> <li class="chapter " data-level="4.4.5.7" data-path="deletecupdatec/sqlite3generaterowindexdelete.html"> <a href="../deletecupdatec/sqlite3generaterowindexdelete.html"> <i class="fa fa-check"></i> <b>4.4.5.7.</b> sqlite3GenerateRowIndexDelete()函数 </a> </li> <li class="chapter " data-level="4.4.5.8" data-path="deletecupdatec/sqlite3generateindexkey.html"> <a href="../deletecupdatec/sqlite3generateindexkey.html"> <i class="fa fa-check"></i> <b>4.4.5.8.</b> sqlite3GenerateIndexKey()函数 </a> </li> </ul> </li> <li class="chapter " data-level="4.4.6" data-path="updatec/updatec.html"> <a href="../updatec/updatec.html"> <i class="fa fa-check"></i> <b>4.4.6.</b> Update.c简介 </a> <ul class="articles"> <li class="chapter " data-level="4.4.6.1" data-path="updatec/sqlite3columndefault.html"> <a href="../updatec/sqlite3columndefault.html"> <i class="fa fa-check"></i> <b>4.4.6.1.</b> sqlite3ColumnDefault函数说明 </a> </li> <li class="chapter " data-level="4.4.6.2" data-path="updatec/sqlite3columndefault1.html"> <a href="../updatec/sqlite3columndefault1.html"> <i class="fa fa-check"></i> <b>4.4.6.2.</b> sqlite3ColumnDefault函数结构 </a> </li> <li class="chapter " data-level="4.4.6.3" data-path="updatec/sqlite3columndefault2.html"> <a href="../updatec/sqlite3columndefault2.html"> <i class="fa fa-check"></i> <b>4.4.6.3.</b> 函数流程图 </a> </li> <li class="chapter " data-level="4.4.6.4" data-path="updatec/updatecsuhssm.html"> <a href="../updatec/updatecsuhssm.html"> <i class="fa fa-check"></i> <b>4.4.6.4.</b> sqlite3Update函数说明 </a> </li> <li class="chapter " data-level="4.4.6.5" data-path="updatec/updatecsuhsjg.html"> <a href="../updatec/updatecsuhsjg.html"> <i class="fa fa-check"></i> <b>4.4.6.5.</b> sqlite3Update函数结构 </a> </li> <li class="chapter " data-level="4.4.6.6" data-path="updatec/updatecsuhslct.html"> <a href="../updatec/updatecsuhslct.html"> <i class="fa fa-check"></i> <b>4.4.6.6.</b> sqlite3Update函数流程图 </a> </li> <li class="chapter " data-level="4.4.6.7" data-path="updatec/updatecuphssm.html"> <a href="../updatec/updatecuphssm.html"> <i class="fa fa-check"></i> <b>4.4.6.7.</b> updateVirtualtable函数说明 </a> </li> <li class="chapter " data-level="4.4.6.8" data-path="updatec/updatevirtualtable.html"> <a href="../updatec/updatevirtualtable.html"> <i class="fa fa-check"></i> <b>4.4.6.8.</b> updateVirtualtable函数结构 </a> </li> <li class="chapter " data-level="4.4.6.9" data-path="updatec/updatecuvhslct.html"> <a href="../updatec/updatecuvhslct.html"> <i class="fa fa-check"></i> <b>4.4.6.9.</b> updateVirtualtable函数流程图 </a> </li> </ul> </li> <li class="chapter " data-level="4.4.7" data-path="deletecupdatec/update.html"> <a href="../deletecupdatec/update.html"> <i class="fa fa-check"></i> <b>4.4.7.</b> Update.c中主要函数的实现及功能 </a> <ul class="articles"> <li class="chapter " data-level="4.4.7.1" data-path="deletecupdatec/sqlite3columndefault.html"> <a href="../deletecupdatec/sqlite3columndefault.html"> <i class="fa fa-check"></i> <b>4.4.7.1.</b> sqlite3ColumnDefault()函数 </a> </li> <li class="chapter " data-level="4.4.7.2" data-path="deletecupdatec/sqlite3update.html"> <a href="../deletecupdatec/sqlite3update.html"> <i class="fa fa-check"></i> <b>4.4.7.2.</b> sqlite3Update()函数 </a> </li> <li class="chapter " data-level="4.4.7.3" data-path="deletecupdatec/updatevirtualtable.html"> <a href="../deletecupdatec/updatevirtualtable.html"> <i class="fa fa-check"></i> <b>4.4.7.3.</b> updateVirtualTable()函数 </a> </li> </ul> </li> <li class="chapter " data-level="4.4.8" data-path="triggerc/triggerjj.html"> <a href="../triggerc/triggerjj.html"> <i class="fa fa-check"></i> <b>4.4.8.</b> Trigger.c </a> <ul class="articles"> <li class="chapter " data-level="4.4.8.1" data-path="triggerc/jbyf.html"> <a href="../triggerc/jbyf.html"> <i class="fa fa-check"></i> <b>4.4.8.1.</b> 基本语法 </a> </li> <li class="chapter " data-level="4.4.8.2" data-path="triggerc/hsjs.html"> <a href="../triggerc/hsjs.html"> <i class="fa fa-check"></i> <b>4.4.8.2.</b> 函数介绍 </a> </li> <li class="chapter " data-level="4.4.8.3" data-path="triggerc/cfqmm.html"> <a href="../triggerc/cfqmm.html"> <i class="fa fa-check"></i> <b>4.4.8.3.</b> 触发器编码(Code) </a> </li> <li class="chapter " data-level="4.4.8.4" data-path="triggerc/triggerssssdfsd.html"> <a href="../triggerc/triggerssssdfsd.html"> <i class="fa fa-check"></i> <b>4.4.8.4.</b> sqlite3BeginTrigger和sqlite3FinishTrigger </a> </li> <li class="chapter " data-level="4.4.8.5" data-path="triggerc/triggerstep.html"> <a href="../triggerc/triggerstep.html"> <i class="fa fa-check"></i> <b>4.4.8.5.</b> Step </a> </li> </ul> </li> <li class="chapter " data-level="4.4.9" data-path="alter_tablealterc/README.html"> <a href="../alter_tablealterc/README.html"> <i class="fa fa-check"></i> <b>4.4.9.</b> 实现修改表功能ALTER TABLE(alter.c的源码分析) </a> <ul class="articles"> <li class="chapter " data-level="4.4.9.1" data-path="alter_tablealterc/renametablefunc.html"> <a href="../alter_tablealterc/renametablefunc.html"> <i class="fa fa-check"></i> <b>4.4.9.1.</b> 重命名表的名称 </a> </li> <li class="chapter " data-level="4.4.9.2" data-path="alter_tablealterc/renameparentfunc.html"> <a href="../alter_tablealterc/renameparentfunc.html"> <i class="fa fa-check"></i> <b>4.4.9.2.</b> 修改任何外键约束定义重命名表为父表 </a> </li> <li class="chapter " data-level="4.4.9.3" data-path="alter_tablealterc/renametriggerfunc.html"> <a href="../alter_tablealterc/renametriggerfunc.html"> <i class="fa fa-check"></i> <b>4.4.9.3.</b> 对触发器的表名做修改 </a> </li> <li class="chapter " data-level="4.4.9.4" data-path="alter_tablealterc/whereorname.html"> <a href="../alter_tablealterc/whereorname.html"> <i class="fa fa-check"></i> <b>4.4.9.4.</b> 创建表达式形式的文本 </a> </li> <li class="chapter " data-level="4.4.9.5" data-path="alter_tablealterc/whereforeignkeys.html"> <a href="../alter_tablealterc/whereforeignkeys.html"> <i class="fa fa-check"></i> <b>4.4.9.5.</b> 生成用来选择有外键约束的全部表的表达式文本 </a> </li> <li class="chapter " data-level="4.4.9.6" data-path="alter_tablealterc/ptab.html"> <a href="../alter_tablealterc/ptab.html"> <i class="fa fa-check"></i> <b>4.4.9.6.</b> 删除和重新加载从数据库表pTab的内部模式 </a> </li> <li class="chapter " data-level="4.4.9.7" data-path="alter_tablealterc/issystemtable.html"> <a href="../alter_tablealterc/issystemtable.html"> <i class="fa fa-check"></i> <b>4.4.9.7.</b> 判断一个系统表 </a> </li> <li class="chapter " data-level="4.4.9.8" data-path="alter_tablealterc/alterrenametable.html"> <a href="../alter_tablealterc/alterrenametable.html"> <i class="fa fa-check"></i> <b>4.4.9.8.</b> 删除表名并重命名为新表名 </a> </li> </ul> </li> </ul> </li> <li class="chapter " data-level="4.5" data-path="dir2/selectinit.html"> <a href="../dir2/selectinit.html"> <i class="fa fa-check"></i> <b>4.5.</b> 生成,清空,删除SELECT查询树函数 </a> </li> <li class="chapter " data-level="4.6" data-path="queryoptiintro/sqlite.html"> <a href="../queryoptiintro/sqlite.html"> <i class="fa fa-check"></i> <b>4.6.</b> 数据库扩展性 </a> <ul class="articles"> <li class="chapter " data-level="4.6.1" data-path="queryoptiintro/virtualtable.html"> <a href="../queryoptiintro/virtualtable.html"> <i class="fa fa-check"></i> <b>4.6.1.</b> virtualtable虚表 </a> </li> <li class="chapter " data-level="4.6.2" data-path="utf.c&vacuum/vacuum.html"> <a href="../utf.c&vacuum/vacuum.html"> <i class="fa fa-check"></i> <b>4.6.2.</b> vacuum.c分析 </a> </li> <li class="chapter " data-level="4.6.3" data-path="loadextclegacyc/README.html"> <a href="../loadextclegacyc/README.html"> <i class="fa fa-check"></i> <b>4.6.3.</b> Loadext及clegacy.c文件解析 </a> </li> <li class="chapter " data-level="4.6.4" data-path="rtree/gs.html"> <a href="../rtree/gs.html"> <i class="fa fa-check"></i> <b>4.6.4.</b> R-tree概述 </a> </li> <li class="chapter " data-level="4.6.5" data-path="rtree/usertree.html"> <a href="../rtree/usertree.html"> <i class="fa fa-check"></i> <b>4.6.5.</b> 使用Rtree模块 </a> <ul class="articles"> <li class="chapter " data-level="4.6.5.1" data-path="rtree/creatertree.html"> <a href="../rtree/creatertree.html"> <i class="fa fa-check"></i> <b>4.6.5.1.</b> 创建一个Rtree索引 </a> </li> <li class="chapter " data-level="4.6.5.2" data-path="rtree/getrtree.html"> <a href="../rtree/getrtree.html"> <i class="fa fa-check"></i> <b>4.6.5.2.</b> 获取一个Rtree索引 </a> </li> <li class="chapter " data-level="4.6.5.3" data-path="rtree/queryrtree.html"> <a href="../rtree/queryrtree.html"> <i class="fa fa-check"></i> <b>4.6.5.3.</b> 查询一个Rtree索引 </a> </li> </ul> </li> <li class="chapter " data-level="4.6.6" data-path="rtree/efficientuse.html"> <a href="../rtree/efficientuse.html"> <i class="fa fa-check"></i> <b>4.6.6.</b> 有效使用Rtree </a> </li> <li class="chapter " data-level="4.6.7" data-path="rtree/tailorrtree.html"> <a href="../rtree/tailorrtree.html"> <i class="fa fa-check"></i> <b>4.6.7.</b> 定制R树查询 </a> <ul class="articles"> <li class="chapter " data-level="4.6.7.1" data-path="rtree/xgeom.html"> <a href="../rtree/xgeom.html"> <i class="fa fa-check"></i> <b>4.6.7.1.</b> 旧版本xGeom回调函数 </a> </li> <li class="chapter " data-level="4.6.7.2" data-path="rtree/xqueryfunc.html"> <a href="../rtree/xqueryfunc.html"> <i class="fa fa-check"></i> <b>4.6.7.2.</b> 全新xQueryFunc回调函数 </a> </li> <li class="chapter " data-level="4.6.7.3" data-path="rtree/tailorCare.html"> <a href="../rtree/tailorCare.html"> <i class="fa fa-check"></i> <b>4.6.7.3.</b> 定制查询注意事项 </a> </li> </ul> </li> <li class="chapter " data-level="4.6.8" data-path="rtree/READMEStruct.html"> <a href="../rtree/READMEStruct.html"> <i class="fa fa-check"></i> <b>4.6.8.</b> SQLiteR树结构 </a> <ul class="articles"> <li class="chapter " data-level="4.6.8.1" data-path="rtree/NodeStruct.html"> <a href="../rtree/NodeStruct.html"> <i class="fa fa-check"></i> <b>4.6.8.1.</b> 结点结构 </a> </li> <li class="chapter " data-level="4.6.8.2" data-path="rtree/CellStruct.html"> <a href="../rtree/CellStruct.html"> <i class="fa fa-check"></i> <b>4.6.8.2.</b> 结点单元结构 </a> </li> </ul> </li> <li class="chapter " data-level="4.6.9" data-path="rtree/READMEImpention.html"> <a href="../rtree/READMEImpention.html"> <i class="fa fa-check"></i> <b>4.6.9.</b> R树特点及算法实现 </a> <ul class="articles"> <li class="chapter " data-level="4.6.9.1" data-path="rtree/Searing.html"> <a href="../rtree/Searing.html"> <i class="fa fa-check"></i> <b>4.6.9.1.</b> 查找 </a> </li> <li class="chapter " data-level="4.6.9.2" data-path="rtree/Insertion.html"> <a href="../rtree/Insertion.html"> <i class="fa fa-check"></i> <b>4.6.9.2.</b> 插入 </a> </li> <li class="chapter " data-level="4.6.9.3" data-path="rtree/Deletion.html"> <a href="../rtree/Deletion.html"> <i class="fa fa-check"></i> <b>4.6.9.3.</b> 删除 </a> </li> <li class="chapter " data-level="4.6.9.4" data-path="rtree/Update.html"> <a href="../rtree/Update.html"> <i class="fa fa-check"></i> <b>4.6.9.4.</b> 更新 </a> </li> <li class="chapter " data-level="4.6.9.5" data-path="rtree/QSplit.html"> <a href="../rtree/QSplit.html"> <i class="fa fa-check"></i> <b>4.6.9.5.</b> 平方分裂 </a> </li> <li class="chapter " data-level="4.6.9.6" data-path="rtree/LinearSplit.html"> <a href="../rtree/LinearSplit.html"> <i class="fa fa-check"></i> <b>4.6.9.6.</b> 线性分裂 </a> </li> </ul> </li> <li class="chapter " data-level="4.6.10" data-path="rtree/READMEOptimize.html"> <a href="../rtree/READMEOptimize.html"> <i class="fa fa-check"></i> <b>4.6.10.</b> R*树优化 </a> <ul class="articles"> <li class="chapter " data-level="4.6.10.1" data-path="rtree/local.html"> <a href="../rtree/local.html"> <i class="fa fa-check"></i> <b>4.6.10.1.</b> 局部优化 </a> </li> <li class="chapter " data-level="4.6.10.2" data-path="rtree/all.html"> <a href="../rtree/all.html"> <i class="fa fa-check"></i> <b>4.6.10.2.</b> 整体优化 </a> </li> </ul> </li> <li class="chapter " data-level="4.6.11" data-path="fts1/cjcode.html"> <a href="../fts1/cjcode.html"> <i class="fa fa-check"></i> <b>4.6.11.</b> 全文索引 </a> </li> <li class="chapter " data-level="4.6.12" data-path="fts1/fts.html"> <a href="../fts1/fts.html"> <i class="fa fa-check"></i> <b>4.6.12.</b> 全文检索(full-text search) </a> <ul class="articles"> <li class="chapter " data-level="4.6.12.1" data-path="fts1/indexO.html"> <a href="../fts1/indexO.html"> <i class="fa fa-check"></i> <b>4.6.12.1.</b> 索引的组织结构 </a> </li> <li class="chapter " data-level="4.6.12.2" data-path="fts1/indexC.html"> <a href="../fts1/indexC.html"> <i class="fa fa-check"></i> <b>4.6.12.2.</b> 索引的创建 </a> </li> <li class="chapter " data-level="4.6.12.3" data-path="fts1/search.html"> <a href="../fts1/search.html"> <i class="fa fa-check"></i> <b>4.6.12.3.</b> 索引的搜索 </a> </li> </ul> </li> <li class="chapter " data-level="4.6.13" data-path="lemon/README.html"> <a href="../lemon/README.html"> <i class="fa fa-check"></i> <b>4.6.13.</b> Lemon语法分析器模板文件 </a> </li> <li class="chapter " data-level="4.6.14" data-path="sqlite/sqliteG2.html"> <a href="../sqlite/sqliteG2.html"> <i class="fa fa-check"></i> <b>4.6.14.</b> 分词器 </a> <ul class="articles"> <li class="chapter " data-level="4.6.14.1" data-path="sqlite/tokenizer.html"> <a href="../sqlite/tokenizer.html"> <i class="fa fa-check"></i> <b>4.6.14.1.</b> Tokenizer运行原理 </a> </li> <li class="chapter " data-level="4.6.14.2" data-path="sqlite/code.html"> <a href="../sqlite/code.html"> <i class="fa fa-check"></i> <b>4.6.14.2.</b> 代码code发生器 </a> </li> <li class="chapter " data-level="4.6.14.3" data-path="sqlite/fts3.html"> <a href="../sqlite/fts3.html"> <i class="fa fa-check"></i> <b>4.6.14.3.</b> FTS3概述 </a> </li> <li class="chapter " data-level="4.6.14.4" data-path="sqlite/fts_tokenizer.html"> <a href="../sqlite/fts_tokenizer.html"> <i class="fa fa-check"></i> <b>4.6.14.4.</b> 分词器:FTS tokenizer分析 </a> </li> <li class="chapter " data-level="4.6.14.5" data-path="sqlite/16____tokenizers.html"> <a href="../sqlite/16____tokenizers.html"> <i class="fa fa-check"></i> <b>4.6.14.5.</b> 自定义(用户)实现tokenizers </a> </li> </ul> </li> <li class="chapter " data-level="4.6.15" data-path="fts3_exprc/fts3.html"> <a href="../fts3_exprc/fts3.html"> <i class="fa fa-check"></i> <b>4.6.15.</b> FTS3 </a> <ul class="articles"> <li class="chapter " data-level="4.6.15.1" data-path="fts3_exprc/fts3_exprcdoc.html"> <a href="../fts3_exprc/fts3_exprcdoc.html"> <i class="fa fa-check"></i> <b>4.6.15.1.</b> fts3_expr简介 </a> </li> <li class="chapter " data-level="4.6.15.2" data-path="fts3_exprc/parsecontext.html"> <a href="../fts3_exprc/parsecontext.html"> <i class="fa fa-check"></i> <b>4.6.15.2.</b> ParseContext结构体 </a> </li> <li class="chapter " data-level="4.6.15.3" data-path="fts3_exprc/getnexttoken.html"> <a href="../fts3_exprc/getnexttoken.html"> <i class="fa fa-check"></i> <b>4.6.15.3.</b> getNextToken()函数 </a> </li> <li class="chapter " data-level="4.6.15.4" data-path="fts3_exprc/getnextstring.html"> <a href="../fts3_exprc/getnextstring.html"> <i class="fa fa-check"></i> <b>4.6.15.4.</b> getNextString()函数 </a> </li> <li class="chapter " data-level="4.6.15.5" data-path="fts3_exprc/getnextnode.html"> <a href="../fts3_exprc/getnextnode.html"> <i class="fa fa-check"></i> <b>4.6.15.5.</b> getNextNode()函数 </a> </li> <li class="chapter " data-level="4.6.15.6" data-path="fts3_exprc/insertbinaryoperator.html"> <a href="../fts3_exprc/insertbinaryoperator.html"> <i class="fa fa-check"></i> <b>4.6.15.6.</b> insertBinaryOperator()函数 </a> </li> <li class="chapter " data-level="4.6.15.7" data-path="fts3_exprc/fts3exprparse.html"> <a href="../fts3_exprc/fts3exprparse.html"> <i class="fa fa-check"></i> <b>4.6.15.7.</b> fts3ExprParse()函数 </a> </li> <li class="chapter " data-level="4.6.15.8" data-path="fts3_exprc/sqlite3fts3exprparse.html"> <a href="../fts3_exprc/sqlite3fts3exprparse.html"> <i class="fa fa-check"></i> <b>4.6.15.8.</b> sqlite3Fts3ExprParse()函数 </a> </li> </ul> </li> </ul> </li> <li class="chapter " data-level="4.7" data-path="optimalandquery/query.html"> <a href="../optimalandquery/query.html"> <i class="fa fa-check"></i> <b>4.7.</b> 在SQLite3下查询数据 </a> </li> <li class="chapter " data-level="4.8" data-path="srcAnaly/otherFunc.html"> <a href="../srcAnaly/otherFunc.html"> <i class="fa fa-check"></i> <b>4.8.</b> 其它一些函数的功能 </a> </li> </ul> </li> <li class="chapter " data-level="5" data-path="summary/READMEG1.html"> <a href="../summary/READMEG1.html"> <i class="fa fa-check"></i> <b>5.</b> 存储管理 </a> <ul class="articles"> <li class="chapter " data-level="5.1" data-path="summary/spacecontrol.html"> <a href="../summary/spacecontrol.html"> <i class="fa fa-check"></i> <b>5.1.</b> 文件系统 </a> <ul class="articles"> <li class="chapter " data-level="5.1.1" data-path="functionandstructbody/analysis.html"> <a href="../functionandstructbody/analysis.html"> <i class="fa fa-check"></i> <b>5.1.1.</b> 文件函数及结构体分析 </a> </li> <li class="chapter " data-level="5.1.2" data-path="third/fenxi.html"> <a href="../third/fenxi.html"> <i class="fa fa-check"></i> <b>5.1.2.</b> 系统接口 </a> <ul class="articles"> <li class="chapter " data-level="5.1.2.1" data-path="third/xjklc.html"> <a href="../third/xjklc.html"> <i class="fa fa-check"></i> <b>5.1.2.1.</b> 简析打开数据库流程 </a> </li> <li class="chapter " data-level="5.1.2.2" data-path="third/hsjg.html"> <a href="../third/hsjg.html"> <i class="fa fa-check"></i> <b>5.1.2.2.</b> 简析os_win.c文件的函数结构 </a> </li> <li class="chapter " data-level="5.1.2.3" data-path="third/sjz.html"> <a href="../third/sjz.html"> <i class="fa fa-check"></i> <b>5.1.2.3.</b> 简析SQLite的锁机制 </a> </li> <li class="chapter " data-level="5.1.2.4" data-path="third/sxlc.html"> <a href="../third/sxlc.html"> <i class="fa fa-check"></i> <b>5.1.2.4.</b> SQLite在Windows系统上的锁机制实现流程 </a> </li> <li class="chapter " data-level="5.1.2.5" data-path="third/sxym.html"> <a href="../third/sxym.html"> <i class="fa fa-check"></i> <b>5.1.2.5.</b> 锁机制在Windows中的实现源码 </a> </li> <li class="chapter " data-level="5.1.2.6" data-path="filestruct/introduction.html"> <a href="../filestruct/introduction.html"> <i class="fa fa-check"></i> <b>5.1.2.6.</b> 文件结构 </a> </li> <li class="chapter " data-level="5.1.2.7" data-path="functionmainimplement/introduction.html"> <a href="../functionmainimplement/introduction.html"> <i class="fa fa-check"></i> <b>5.1.2.7.</b> 功能的主要实现 </a> </li> </ul> </li> <li class="chapter " data-level="5.1.3" data-path="summary/filesysteminterface"> <a href="../summary/filesysteminterface"> <i class="fa fa-check"></i> <b>5.1.3.</b> filesysteminterface </a> </li> </ul> </li> <li class="chapter " data-level="5.2" data-path="B-treeImplementation/introduction.html"> <a href="../B-treeImplementation/introduction.html"> <i class="fa fa-check"></i> <b>5.2.</b> SQLite中B-tree的实现 </a> <ul class="articles"> <li class="chapter " data-level="5.2.1" data-path="B-treeImplementation/sqliteb-tree.html"> <a href="../B-treeImplementation/sqliteb-tree.html"> <i class="fa fa-check"></i> <b>5.2.1.</b> SQLite中的B-tree </a> </li> <li class="chapter " data-level="5.2.2" data-path="B-treeImplementation/hierarchicalorganization.html"> <a href="../B-treeImplementation/hierarchicalorganization.html"> <i class="fa fa-check"></i> <b>5.2.2.</b> SQLite层次化数据组织 </a> </li> <li class="chapter " data-level="5.2.3" data-path="B-treeImplementation/overflow.html"> <a href="../B-treeImplementation/overflow.html"> <i class="fa fa-check"></i> <b>5.2.3.</b> 页面溢出 </a> </li> <li class="chapter " data-level="5.2.4" data-path="B-treeImplementation/b-tree_api.html"> <a href="../B-treeImplementation/b-tree_api.html"> <i class="fa fa-check"></i> <b>5.2.4.</b> B-tree API </a> </li> <li class="chapter " data-level="5.2.5" data-path="B-treeImplementation/implement.html"> <a href="../B-treeImplementation/implement.html"> <i class="fa fa-check"></i> <b>5.2.5.</b> 实现的技术细节 </a> </li> </ul> </li> <li class="chapter " data-level="5.3" data-path="ljPager/pager.html"> <a href="../ljPager/pager.html"> <i class="fa fa-check"></i> <b>5.3.</b> Pager概述 </a> <ul class="articles"> <li class="chapter " data-level="5.3.1" data-path="ljPager/21.html"> <a href="../ljPager/21.html"> <i class="fa fa-check"></i> <b>5.3.1.</b> Pager状态 </a> </li> <li class="chapter " data-level="5.3.2" data-path="ljPager/22.html"> <a href="../ljPager/22.html"> <i class="fa fa-check"></i> <b>5.3.2.</b> Pager的数据库文件页 </a> </li> <li class="chapter " data-level="5.3.3" data-path="ljPager/23.html"> <a href="../ljPager/23.html"> <i class="fa fa-check"></i> <b>5.3.3.</b> Pager的相关参数 </a> </li> <li class="chapter " data-level="5.3.4" data-path="ljPager/24.html"> <a href="../ljPager/24.html"> <i class="fa fa-check"></i> <b>5.3.4.</b> 页面类型 </a> </li> <li class="chapter " data-level="5.3.5" data-path="ljPager/25.html"> <a href="../ljPager/25.html"> <i class="fa fa-check"></i> <b>5.3.5.</b> Pager的状态 </a> </li> <li class="chapter " data-level="5.3.6" data-path="ljPager/26.html"> <a href="../ljPager/26.html"> <i class="fa fa-check"></i> <b>5.3.6.</b> Pager的结构 </a> </li> <li class="chapter " data-level="5.3.7" data-path="ljPager/27.html"> <a href="../ljPager/27.html"> <i class="fa fa-check"></i> <b>5.3.7.</b> 日志 </a> </li> <li class="chapter " data-level="5.3.8" data-path="ljPager/28.html"> <a href="../ljPager/28.html"> <i class="fa fa-check"></i> <b>5.3.8.</b> 页面缓存 </a> </li> <li class="chapter " data-level="5.3.9" data-path="ljPager/29.html"> <a href="../ljPager/29.html"> <i class="fa fa-check"></i> <b>5.3.9.</b> 锁机制 </a> </li> </ul> </li> <li class="chapter " data-level="5.4" data-path="ljPager/sqlitepager.html"> <a href="../ljPager/sqlitepager.html"> <i class="fa fa-check"></i> <b>5.4.</b> Pager的运行流程概述 </a> <ul class="articles"> <li class="chapter " data-level="5.4.1" data-path="ljPager/31.html"> <a href="../ljPager/31.html"> <i class="fa fa-check"></i> <b>5.4.1.</b> 打开/关闭一个页面连接 </a> </li> <li class="chapter " data-level="5.4.2" data-path="ljPager/32.html"> <a href="../ljPager/32.html"> <i class="fa fa-check"></i> <b>5.4.2.</b> 配置页面对象的函数 </a> </li> <li class="chapter " data-level="5.4.3" data-path="ljPager/33.html"> <a href="../ljPager/33.html"> <i class="fa fa-check"></i> <b>5.4.3.</b> 获取和释放页面引用的函数 </a> </li> <li class="chapter " data-level="5.4.4" data-path="ljPager/34.html"> <a href="../ljPager/34.html"> <i class="fa fa-check"></i> <b>5.4.4.</b> 对页面引用的操作 </a> </li> <li class="chapter " data-level="5.4.5" data-path="ljPager/35.html"> <a href="../ljPager/35.html"> <i class="fa fa-check"></i> <b>5.4.5.</b> 管理页面事务和保存点的函数 </a> </li> <li class="chapter " data-level="5.4.6" data-path="ljPager/36.html"> <a href="../ljPager/36.html"> <i class="fa fa-check"></i> <b>5.4.6.</b> 查询页面状态/配置 </a> </li> <li class="chapter " data-level="5.4.7" data-path="ljPager/37.html"> <a href="../ljPager/37.html"> <i class="fa fa-check"></i> <b>5.4.7.</b> 截断数据库文件 </a> </li> <li class="chapter " data-level="5.4.8" data-path="ljPager/38.html"> <a href="../ljPager/38.html"> <i class="fa fa-check"></i> <b>5.4.8.</b> 测试/调试 </a> </li> </ul> </li> <li class="chapter " data-level="5.5" data-path="cache analysis/pager/pagecache.html"> <a href="../cache analysis/pager/pagecache.html"> <i class="fa fa-check"></i> <b>5.5.</b> 页面缓冲管理 </a> <ul class="articles"> <li class="chapter " data-level="5.5.1" data-path="cache analysis/pager/cachemanage.html"> <a href="../cache analysis/pager/cachemanage.html"> <i class="fa fa-check"></i> <b>5.5.1.</b> 缓存管理 </a> </li> <li class="chapter " data-level="5.5.2" data-path="cache analysis/pager/cacheorg.html"> <a href="../cache analysis/pager/cacheorg.html"> <i class="fa fa-check"></i> <b>5.5.2.</b> 缓存组织 </a> </li> </ul> </li> <li class="chapter " data-level="5.6" data-path="cache analysis/pager/cache.html"> <a href="../cache analysis/pager/cache.html"> <i class="fa fa-check"></i> <b>5.6.</b> cache具体结构 </a> <ul class="articles"> <li class="chapter " data-level="5.6.1" data-path="cache analysis/pager/struct_pcachestruct_pcach1/pcahcevspcache1.html"> <a href="../cache analysis/pager/struct_pcachestruct_pcach1/pcahcevspcache1.html"> <i class="fa fa-check"></i> <b>5.6.1.</b> Struct PCache与Struct PCach1 </a> </li> <li class="chapter " data-level="5.6.2" data-path="cache analysis/pager/struct_pcache_vs_struct_pcache1/pghdrvspghdr1.html"> <a href="../cache analysis/pager/struct_pcache_vs_struct_pcache1/pghdrvspghdr1.html"> <i class="fa fa-check"></i> <b>5.6.2.</b> Struct PCache VS Struct PCache1 </a> </li> <li class="chapter " data-level="5.6.3" data-path="cache analysis/pager/struct_pghdr_1struct_pcache1/pghdr1andpcache1.html"> <a href="../cache analysis/pager/struct_pghdr_1struct_pcache1/pghdr1andpcache1.html"> <i class="fa fa-check"></i> <b>5.6.3.</b> struct PgHdr 1与struct PCache1 </a> </li> <li class="chapter " data-level="5.6.4" data-path="cache analysis/pager/cache/cachestucture.html"> <a href="../cache analysis/pager/cache/cachestucture.html"> <i class="fa fa-check"></i> <b>5.6.4.</b> cache内存结构 </a> </li> <li class="chapter " data-level="5.6.5" data-path="cache analysis/pager/struct_pgroupstruct_pcacheglobal/pgroupandpcacheglobal.html"> <a href="../cache analysis/pager/struct_pgroupstruct_pcacheglobal/pgroupandpcacheglobal.html"> <i class="fa fa-check"></i> <b>5.6.5.</b> Struct PGroup与Struct PCacheGlobal </a> </li> </ul> </li> <li class="chapter " data-level="5.7" data-path="bit/bitvecintro.html"> <a href="../bit/bitvecintro.html"> <i class="fa fa-check"></i> <b>5.7.</b> Bitvec.c介绍 </a> <ul class="articles"> <li class="chapter " data-level="5.7.1" data-path="bit/achieve.html"> <a href="../bit/achieve.html"> <i class="fa fa-check"></i> <b>5.7.1.</b> 具体实现及源码分析 </a> </li> </ul> </li> </ul> </li> <li class="chapter " data-level="6" data-path="References/introduction.html"> <a href="../References/introduction.html"> <i class="fa fa-check"></i> <b>6.</b> 事务:并发控制和恢复 </a> <ul class="articles"> <li class="chapter " data-level="6.1" data-path="lockandimplement/introduction.html"> <a href="../lockandimplement/introduction.html"> <i class="fa fa-check"></i> <b>6.1.</b> SQLite不同模式的锁与实现 </a> <ul class="articles"> <li class="chapter " data-level="6.1.1" data-path="lockandimplement/machining.html"> <a href="../lockandimplement/machining.html"> <i class="fa fa-check"></i> <b>6.1.1.</b> SQLite锁机制简介 </a> </li> <li class="chapter " data-level="6.1.2" data-path="lockandimplement/method.html"> <a href="../lockandimplement/method.html"> <i class="fa fa-check"></i> <b>6.1.2.</b> 文件加锁方法 </a> <ul class="articles"> <li class="chapter " data-level="6.1.2.1" data-path="lockandimplement/posix.html"> <a href="../lockandimplement/posix.html"> <i class="fa fa-check"></i> <b>6.1.2.1.</b> POSIX locking </a> </li> <li class="chapter " data-level="6.1.2.2" data-path="lockandimplement/noop.html"> <a href="../lockandimplement/noop.html"> <i class="fa fa-check"></i> <b>6.1.2.2.</b> No-op Locking </a> </li> <li class="chapter " data-level="6.1.2.3" data-path="lockandimplement/dotfile.html"> <a href="../lockandimplement/dotfile.html"> <i class="fa fa-check"></i> <b>6.1.2.3.</b> dot-file Locking </a> </li> <li class="chapter " data-level="6.1.2.4" data-path="lockandimplement/flock.html"> <a href="../lockandimplement/flock.html"> <i class="fa fa-check"></i> <b>6.1.2.4.</b> flock Locking </a> </li> <li class="chapter " data-level="6.1.2.5" data-path="lockandimplement/semaphore.html"> <a href="../lockandimplement/semaphore.html"> <i class="fa fa-check"></i> <b>6.1.2.5.</b> Named Semaphore Locking </a> </li> <li class="chapter " data-level="6.1.2.6" data-path="lockandimplement/afp.html"> <a href="../lockandimplement/afp.html"> <i class="fa fa-check"></i> <b>6.1.2.6.</b> AFP Locking </a> </li> </ul> </li> <li class="chapter " data-level="6.1.3" data-path="lockandimplement/function.html"> <a href="../lockandimplement/function.html"> <i class="fa fa-check"></i> <b>6.1.3.</b> 各个锁机制实现函数 </a> </li> </ul> </li> <li class="chapter " data-level="6.2" data-path="part6/1.html"> <a href="../part6/1.html"> <i class="fa fa-check"></i> <b>6.2.</b> SQlite互斥锁分析 </a> <ul class="articles"> <li class="chapter " data-level="6.2.1" data-path="part6/mutexh.html"> <a href="../part6/mutexh.html"> <i class="fa fa-check"></i> <b>6.2.1.</b> mutex.h </a> </li> <li class="chapter " data-level="6.2.2" data-path="part6/mutexc.html"> <a href="../part6/mutexc.html"> <i class="fa fa-check"></i> <b>6.2.2.</b> mutex.c </a> <ul class="articles"> <li class="chapter " data-level="6.2.2.1" data-path="part6/mutex.html"> <a href="../part6/mutex.html"> <i class="fa fa-check"></i> <b>6.2.2.1.</b> Mutex初始化 </a> </li> <li class="chapter " data-level="6.2.2.2" data-path="part6/enter.html"> <a href="../part6/enter.html"> <i class="fa fa-check"></i> <b>6.2.2.2.</b> 互斥体enter使用 </a> </li> <li class="chapter " data-level="6.2.2.3" data-path="part6/try.html"> <a href="../part6/try.html"> <i class="fa fa-check"></i> <b>6.2.2.3.</b> 互斥体try使用 </a> </li> </ul> </li> <li class="chapter " data-level="6.2.3" data-path="part6/mutex_w32c.html"> <a href="../part6/mutex_w32c.html"> <i class="fa fa-check"></i> <b>6.2.3.</b> Mutex_w32.c </a> <ul class="articles"> <li class="chapter " data-level="6.2.3.1" data-path="part6/631.html"> <a href="../part6/631.html"> <i class="fa fa-check"></i> <b>6.2.3.1.</b> 互斥锁结构体 </a> </li> <li class="chapter " data-level="6.2.3.2" data-path="part6/632.html"> <a href="../part6/632.html"> <i class="fa fa-check"></i> <b>6.2.3.2.</b> 设置结构体下的锁的函数指针 </a> </li> <li class="chapter " data-level="6.2.3.3" data-path="part6/633.html"> <a href="../part6/633.html"> <i class="fa fa-check"></i> <b>6.2.3.3.</b> 初始化互斥锁 </a> <ul class="articles"> <li class="chapter " data-level="6.2.3.3.1" data-path="part6/6331.html"> <a href="../part6/6331.html"> <i class="fa fa-check"></i> <b>6.2.3.3.1.</b> 互斥锁结构体分配 </a> </li> </ul> </li> <li class="chapter " data-level="6.2.3.4" data-path="part6/634.html"> <a href="../part6/634.html"> <i class="fa fa-check"></i> <b>6.2.3.4.</b> 请求锁 </a> </li> <li class="chapter " data-level="6.2.3.5" data-path="part6/635.html"> <a href="../part6/635.html"> <i class="fa fa-check"></i> <b>6.2.3.5.</b> 销毁锁 </a> </li> </ul> </li> <li class="chapter " data-level="6.2.4" data-path="part6/mutex_unixc.html"> <a href="../part6/mutex_unixc.html"> <i class="fa fa-check"></i> <b>6.2.4.</b> mutex_unix.c </a> <ul class="articles"> <li class="chapter " data-level="6.2.4.1" data-path="part6/641.html"> <a href="../part6/641.html"> <i class="fa fa-check"></i> <b>6.2.4.1.</b> 互斥锁结构体 </a> </li> <li class="chapter " data-level="6.2.4.2" data-path="part6/642.html"> <a href="../part6/642.html"> <i class="fa fa-check"></i> <b>6.2.4.2.</b> 函数功能 </a> </li> </ul> </li> <li class="chapter " data-level="6.2.5" data-path="part6/mutex_noopc.html"> <a href="../part6/mutex_noopc.html"> <i class="fa fa-check"></i> <b>6.2.5.</b> mutex_noop.c </a> <ul class="articles"> <li class="chapter " data-level="6.2.5.1" data-path="part6/451.html"> <a href="../part6/451.html"> <i class="fa fa-check"></i> <b>6.2.5.1.</b> 非调试情况 </a> </li> <li class="chapter " data-level="6.2.5.2" data-path="part6/652.html"> <a href="../part6/652.html"> <i class="fa fa-check"></i> <b>6.2.5.2.</b> 调试的情况 </a> </li> </ul> </li> <li class="chapter " data-level="6.2.6" data-path="part6/memjournalc.html"> <a href="../part6/memjournalc.html"> <i class="fa fa-check"></i> <b>6.2.6.</b> memjournal.c </a> <ul class="articles"> <li class="chapter " data-level="6.2.6.1" data-path="part6/661.html"> <a href="../part6/661.html"> <i class="fa fa-check"></i> <b>6.2.6.1.</b> 日志相关存储结构 </a> <ul class="articles"> <li class="chapter " data-level="6.2.6.1.1" data-path="part6/6611.html"> <a href="../part6/6611.html"> <i class="fa fa-check"></i> <b>6.2.6.1.1.</b> 函数指针结构体 </a> </li> </ul> </li> <li class="chapter " data-level="6.2.6.2" data-path="part6/662.html"> <a href="../part6/662.html"> <i class="fa fa-check"></i> <b>6.2.6.2.</b> 函数功能表 </a> </li> <li class="chapter " data-level="6.2.6.3" data-path="part6/663.html"> <a href="../part6/663.html"> <i class="fa fa-check"></i> <b>6.2.6.3.</b> 打开内存日志 </a> </li> <li class="chapter " data-level="6.2.6.4" data-path="part6/664.html"> <a href="../part6/664.html"> <i class="fa fa-check"></i> <b>6.2.6.4.</b> 读取内存日志 </a> </li> <li class="chapter " data-level="6.2.6.5" data-path="part6/665.html"> <a href="../part6/665.html"> <i class="fa fa-check"></i> <b>6.2.6.5.</b> 是否为内存日志文件 </a> </li> </ul> </li> </ul> </li> <li class="chapter " data-level="6.3" data-path="part5/1.html"> <a href="../part5/1.html"> <i class="fa fa-check"></i> <b>6.3.</b> memjournal.c </a> <ul class="articles"> <li class="chapter " data-level="6.3.1" data-path="part5/51.html"> <a href="../part5/51.html"> <i class="fa fa-check"></i> <b>6.3.1.</b> 函数及结构体功能 </a> </li> </ul> </li> <li class="chapter " data-level="6.4" data-path="wal/wal.html"> <a href="../wal/wal.html"> <i class="fa fa-check"></i> <b>6.4.</b> Wal的介绍 </a> </li> <li class="chapter " data-level="6.5" data-path="wal/README.html"> <a href="../wal/README.html"> <i class="fa fa-check"></i> <b>6.5.</b> Wal的工作原理 </a> <ul class="articles"> <li class="chapter " data-level="6.5.1" data-path="wal/wal1.html"> <a href="../wal/wal1.html"> <i class="fa fa-check"></i> <b>6.5.1.</b> Wal的优缺点 </a> </li> <li class="chapter " data-level="6.5.2" data-path="wal/work.html"> <a href="../wal/work.html"> <i class="fa fa-check"></i> <b>6.5.2.</b> 工作原理 </a> </li> <li class="chapter " data-level="6.5.3" data-path="wal/filestyle.html"> <a href="../wal/filestyle.html"> <i class="fa fa-check"></i> <b>6.5.3.</b> Wal文件格式 </a> </li> <li class="chapter " data-level="6.5.4" data-path="wal/checksumcheck.html"> <a href="../wal/checksumcheck.html"> <i class="fa fa-check"></i> <b>6.5.4.</b> 校验 </a> </li> <li class="chapter " data-level="6.5.5" data-path="wal/readread.html"> <a href="../wal/readread.html"> <i class="fa fa-check"></i> <b>6.5.5.</b> 读写事务 </a> </li> <li class="chapter " data-level="6.5.6" data-path="wal/savepointsvae.html"> <a href="../wal/savepointsvae.html"> <i class="fa fa-check"></i> <b>6.5.6.</b> 保存点 </a> </li> <li class="chapter " data-level="6.5.7" data-path="wal/ability.html"> <a href="../wal/ability.html"> <i class="fa fa-check"></i> <b>6.5.7.</b> 性能问题 </a> </li> <li class="chapter " data-level="6.5.8" data-path="wal/checkpointcheckpoint.html"> <a href="../wal/checkpointcheckpoint.html"> <i class="fa fa-check"></i> <b>6.5.8.</b> 检查点 </a> </li> </ul> </li> <li class="chapter " data-level="6.6" data-path="references/lockandmutex.html"> <a href="../references/lockandmutex.html"> <i class="fa fa-check"></i> <b>6.6.</b> lockandmutex </a> </li> </ul> </li> <li class="chapter " data-level="7" data-path="introduce/READMEG12.html"> <a href="../introduce/READMEG12.html"> <i class="fa fa-check"></i> <b>7.</b> 共享组件 </a> <ul class="articles"> <li class="chapter " data-level="7.1" data-path="introduce/crewG12.html"> <a href="../introduce/crewG12.html"> <i class="fa fa-check"></i> <b>7.1.</b> 目录管理器 </a> </li> <li class="chapter " data-level="7.2" data-path="introduce/workG12.html"> <a href="../introduce/workG12.html"> <i class="fa fa-check"></i> <b>7.2.</b> 内存分配器 </a> <ul class="articles"> <li class="chapter " data-level="7.2.1" data-path="part2/README.html"> <a href="../part2/README.html"> <i class="fa fa-check"></i> <b>7.2.1.</b> 动态内存分配器 </a> <ul class="articles"> <li class="chapter " data-level="7.2.1.1" data-path="part2/mem0c.html"> <a href="../part2/mem0c.html"> <i class="fa fa-check"></i> <b>7.2.1.1.</b> 空操作内存分配器(mem0.c) </a> </li> <li class="chapter " data-level="7.2.1.2" data-path="part2/mem1c.html"> <a href="../part2/mem1c.html"> <i class="fa fa-check"></i> <b>7.2.1.2.</b> 缺省内存分配器(mem1.c) </a> </li> <li class="chapter " data-level="7.2.1.3" data-path="part2/mem2c.html"> <a href="../part2/mem2c.html"> <i class="fa fa-check"></i> <b>7.2.1.3.</b> 调试内存分配器(mem2.c) </a> <ul class="articles"> <li class="chapter " data-level="7.2.1.3.1" data-path="part2/backtrace.html"> <a href="../part2/backtrace.html"> <i class="fa fa-check"></i> <b>7.2.1.3.1.</b> 关于backtrace </a> </li> <li class="chapter " data-level="7.2.1.3.2" data-path="part2/2_3_2.html"> <a href="../part2/2_3_2.html"> <i class="fa fa-check"></i> <b>7.2.1.3.2.</b> 设置哨兵对内存破坏进行检查 </a> </li> <li class="chapter " data-level="7.2.1.3.3" data-path="part2/unfree_list.html"> <a href="../part2/unfree_list.html"> <i class="fa fa-check"></i> <b>7.2.1.3.3.</b> 通过unfree list检查内存泄露 </a> </li> </ul> </li> <li class="chapter " data-level="7.2.1.4" data-path="part2/2_4.html"> <a href="../part2/2_4.html"> <i class="fa fa-check"></i> <b>7.2.1.4.</b> 内存分配函数 </a> </li> </ul> </li> <li class="chapter " data-level="7.2.2" data-path="mem/README.html"> <a href="../mem/README.html"> <i class="fa fa-check"></i> <b>7.2.2.</b> 内存分配器 </a> <ul class="articles"> <li class="chapter " data-level="7.2.2.1" data-path="mem/article.html"> <a href="../mem/article.html"> <i class="fa fa-check"></i> <b>7.2.2.1.</b> mem0.c </a> </li> <li class="chapter " data-level="7.2.2.2" data-path="mem/mem1c.html"> <a href="../mem/mem1c.html"> <i class="fa fa-check"></i> <b>7.2.2.2.</b> mem1.c </a> </li> <li class="chapter " data-level="7.2.2.3" data-path="mem/mem2c.html"> <a href="../mem/mem2c.html"> <i class="fa fa-check"></i> <b>7.2.2.3.</b> mem2.c </a> </li> <li class="chapter " data-level="7.2.2.4" data-path="mem/mem3c.html"> <a href="../mem/mem3c.html"> <i class="fa fa-check"></i> <b>7.2.2.4.</b> mem3.c </a> </li> <li class="chapter " data-level="7.2.2.5" data-path="mem/mem4c.html"> <a href="../mem/mem4c.html"> <i class="fa fa-check"></i> <b>7.2.2.5.</b> mem5.c </a> </li> </ul> </li> <li class="chapter " data-level="7.2.3" data-path="part3/README.html"> <a href="../part3/README.html"> <i class="fa fa-check"></i> <b>7.2.3.</b> Mem3.c代码分析 </a> <ul class="articles"> <li class="chapter " data-level="7.2.3.1" data-path="part3/mem3c.html"> <a href="../part3/mem3c.html"> <i class="fa fa-check"></i> <b>7.2.3.1.</b> Mem3.c功能概述 </a> </li> <li class="chapter " data-level="7.2.3.2" data-path="part3/3_1.html"> <a href="../part3/3_1.html"> <i class="fa fa-check"></i> <b>7.2.3.2.</b> 名词及相关概念 </a> </li> <li class="chapter " data-level="7.2.3.3" data-path="part3/3_3.html"> <a href="../part3/3_3.html"> <i class="fa fa-check"></i> <b>7.2.3.3.</b> 块存储结构 </a> <ul class="articles"> <li class="chapter " data-level="7.2.3.3.1" data-path="part3/3_3_1.html"> <a href="../part3/3_3_1.html"> <i class="fa fa-check"></i> <b>7.2.3.3.1.</b> 内存分配结构体 </a> </li> </ul> </li> <li class="chapter " data-level="7.2.3.4" data-path="part3/3_4.html"> <a href="../part3/3_4.html"> <i class="fa fa-check"></i> <b>7.2.3.4.</b> Mem3.c函数列表 </a> </li> <li class="chapter " data-level="7.2.3.5" data-path="part3/3_5.html"> <a href="../part3/3_5.html"> <i class="fa fa-check"></i> <b>7.2.3.5.</b> 函数代码解析 </a> </li> </ul> </li> <li class="chapter " data-level="7.2.4" data-path="part4/article.html"> <a href="../part4/article.html"> <i class="fa fa-check"></i> <b>7.2.4.</b> mem5.c </a> <ul class="articles"> <li class="chapter " data-level="7.2.4.1" data-path="part4/41_mem5c.html"> <a href="../part4/41_mem5c.html"> <i class="fa fa-check"></i> <b>7.2.4.1.</b> mem5.c功能概述 </a> </li> <li class="chapter " data-level="7.2.4.2" data-path="part4/mem5cc.html"> <a href="../part4/mem5cc.html"> <i class="fa fa-check"></i> <b>7.2.4.2.</b> mem5.c调用的C接口 </a> </li> <li class="chapter " data-level="7.2.4.3" data-path="part4/43.html"> <a href="../part4/43.html"> <i class="fa fa-check"></i> <b>7.2.4.3.</b> 名词及相关概念 </a> </li> <li class="chapter " data-level="7.2.4.4" data-path="part4/44.html"> <a href="../part4/44.html"> <i class="fa fa-check"></i> <b>7.2.4.4.</b> 函数及结构体功能 </a> </li> <li class="chapter " data-level="7.2.4.5" data-path="part4/45.html"> <a href="../part4/45.html"> <i class="fa fa-check"></i> <b>7.2.4.5.</b> 重要代码解析 </a> </li> </ul> </li> <li class="chapter " data-level="7.2.5" data-path="mallocc/README.html"> <a href="../mallocc/README.html"> <i class="fa fa-check"></i> <b>7.2.5.</b> Malloc.c </a> <ul class="articles"> <li class="chapter " data-level="7.2.5.1" data-path="mallocc/future.html"> <a href="../mallocc/future.html"> <i class="fa fa-check"></i> <b>7.2.5.1.</b> 特性 </a> </li> <li class="chapter " data-level="7.2.5.2" data-path="mallocc/test.html"> <a href="../mallocc/test.html"> <i class="fa fa-check"></i> <b>7.2.5.2.</b> 测试 </a> </li> <li class="chapter " data-level="7.2.5.3" data-path="mallocc/config.html"> <a href="../mallocc/config.html"> <i class="fa fa-check"></i> <b>7.2.5.3.</b> 配置 </a> </li> <li class="chapter " data-level="7.2.5.4" data-path="mallocc/api.html"> <a href="../mallocc/api.html"> <i class="fa fa-check"></i> <b>7.2.5.4.</b> API介绍 </a> </li> <li class="chapter " data-level="7.2.5.5" data-path="mallocc/summry.html"> <a href="../mallocc/summry.html"> <i class="fa fa-check"></i> <b>7.2.5.5.</b> 总结 </a> </li> </ul> </li> <li class="chapter " data-level="7.2.6" data-path="introduce/dynamicmemorymalloc.html"> <a href="../introduce/dynamicmemorymalloc.html"> <i class="fa fa-check"></i> <b>7.2.6.</b> dynamicmemorymalloc </a> </li> </ul> </li> <li class="chapter " data-level="7.3" data-path="conclusion/README.html"> <a href="../conclusion/README.html"> <i class="fa fa-check"></i> <b>7.3.</b> 其他工具 </a> <ul class="articles"> <li class="chapter " data-level="7.3.1" data-path="sqlite/sqlitelimiteh.html"> <a href="../sqlite/sqlitelimiteh.html"> <i class="fa fa-check"></i> <b>7.3.1.</b> SqliteLimite.h </a> </li> <li class="chapter " data-level="7.3.2" data-path="sqlite/sqliteinth.html"> <a href="../sqlite/sqliteinth.html"> <i class="fa fa-check"></i> <b>7.3.2.</b> SqliteInt.h </a> </li> <li class="chapter " data-level="7.3.3" data-path="sqlite/globalc.html"> <a href="../sqlite/globalc.html"> <i class="fa fa-check"></i> <b>7.3.3.</b> Global.c模块源码分析 </a> </li> <li class="chapter " data-level="7.3.4" data-path="mainc/READMEG16.html"> <a href="../mainc/READMEG16.html"> <i class="fa fa-check"></i> <b>7.3.4.</b> 主函数分析 </a> <ul class="articles"> <li class="chapter " data-level="7.3.4.1" data-path="vdbeInt&vdbemem887/vdbememc887.html"> <a href="../vdbeInt&vdbemem887/vdbememc887.html"> <i class="fa fa-check"></i> <b>7.3.4.1.</b> vdbemem.c分析 </a> <ul class="articles"> <li class="chapter " data-level="7.3.4.1.1" data-path="vdbemem/vdbememsqlitevdbe.html"> <a href="../vdbemem/vdbememsqlitevdbe.html"> <i class="fa fa-check"></i> <b>7.3.4.1.1.</b> SQLite的虚拟机 </a> </li> <li class="chapter " data-level="7.3.4.1.2" data-path="vdbemem/vdbememvdbememccode.html"> <a href="../vdbemem/vdbememvdbememccode.html"> <i class="fa fa-check"></i> <b>7.3.4.1.2.</b> 结构体"Mem"的操作函数-vdbemem.c </a> </li> </ul> </li> <li class="chapter " data-level="7.3.4.2" data-path="mainc/hanshu.html"> <a href="../mainc/hanshu.html"> <i class="fa fa-check"></i> <b>7.3.4.2.</b> 函数功能 </a> </li> <li class="chapter " data-level="7.3.4.3" data-path="mainc/caozuo.html"> <a href="../mainc/caozuo.html"> <i class="fa fa-check"></i> <b>7.3.4.3.</b> 操作控制 </a> </li> </ul> </li> <li class="chapter " data-level="7.3.5" data-path="printf/printfsqlite.html"> <a href="../printf/printfsqlite.html"> <i class="fa fa-check"></i> <b>7.3.5.</b> Printf.c分析 </a> <ul class="articles"> <li class="chapter " data-level="7.3.5.1" data-path="printf/datatype.html"> <a href="../printf/datatype.html"> <i class="fa fa-check"></i> <b>7.3.5.1.</b> 数据类型定义 </a> </li> <li class="chapter " data-level="7.3.5.2" data-path="printf/sqlite3AppendSpace.html"> <a href="../printf/sqlite3AppendSpace.html"> <i class="fa fa-check"></i> <b>7.3.5.2.</b> sqlite3AppendSpace()函数 </a> </li> <li class="chapter " data-level="7.3.5.3" data-path="printf/sqlite3vxprintf.html"> <a href="../printf/sqlite3vxprintf.html"> <i class="fa fa-check"></i> <b>7.3.5.3.</b> sqlite3VXPrintf()函数 </a> </li> <li class="chapter " data-level="7.3.5.4" data-path="printf/sqlite3straccumappend.html"> <a href="../printf/sqlite3straccumappend.html"> <i class="fa fa-check"></i> <b>7.3.5.4.</b> sqlite3StrAccumAppend()函数 </a> </li> <li class="chapter " data-level="7.3.5.5" data-path="printf/sqlite3straccumfinish.html"> <a href="../printf/sqlite3straccumfinish.html"> <i class="fa fa-check"></i> <b>7.3.5.5.</b> *sqlite3StrAccumFinish()函数 </a> </li> <li class="chapter " data-level="7.3.5.6" data-path="printf/sqlite3straccumreset.html"> <a href="../printf/sqlite3straccumreset.html"> <i class="fa fa-check"></i> <b>7.3.5.6.</b> sqlite3StrAccumReset()函数 </a> </li> <li class="chapter " data-level="7.3.5.7" data-path="printf/sqlite3straccuminit.html"> <a href="../printf/sqlite3straccuminit.html"> <i class="fa fa-check"></i> <b>7.3.5.7.</b> sqlite3StrAccumInit()函数 </a> </li> <li class="chapter " data-level="7.3.5.8" data-path="printf/sqlite3vmprintf.html"> <a href="../printf/sqlite3vmprintf.html"> <i class="fa fa-check"></i> <b>7.3.5.8.</b> *sqlite3VMPrintf()函数 </a> </li> <li class="chapter " data-level="7.3.5.9" data-path="printf/sqlite3mprintf.html"> <a href="../printf/sqlite3mprintf.html"> <i class="fa fa-check"></i> <b>7.3.5.9.</b> *sqlite3MPrintf()函数 </a> </li> <li class="chapter " data-level="7.3.5.10" data-path="printf/sqlite3mappendf.html"> <a href="../printf/sqlite3mappendf.html"> <i class="fa fa-check"></i> <b>7.3.5.10.</b> *sqlite3MAppendf()函数 </a> </li> <li class="chapter " data-level="7.3.5.11" data-path="printf/sqlite3_vmprintf.html"> <a href="../printf/sqlite3_vmprintf.html"> <i class="fa fa-check"></i> <b>7.3.5.11.</b> *sqlite3_vmprintf()函数 </a> </li> <li class="chapter " data-level="7.3.5.12" data-path="printf/sqlite3_mprintf.html"> <a href="../printf/sqlite3_mprintf.html"> <i class="fa fa-check"></i> <b>7.3.5.12.</b> *sqlite3_mprintf()函数 </a> </li> <li class="chapter " data-level="7.3.5.13" data-path="printf/sqlite3_vsnprintfsqlite3_snprintf.html"> <a href="../printf/sqlite3_vsnprintfsqlite3_snprintf.html"> <i class="fa fa-check"></i> <b>7.3.5.13.</b> *sqlite3_vsnprintf()函数;*sqlite3_snprintf()函数 </a> </li> <li class="chapter " data-level="7.3.5.14" data-path="printf/renderlogmsg.html"> <a href="../printf/renderlogmsg.html"> <i class="fa fa-check"></i> <b>7.3.5.14.</b> renderLogMsg()函数 </a> </li> <li class="chapter " data-level="7.3.5.15" data-path="printf/sqlite3_log.html"> <a href="../printf/sqlite3_log.html"> <i class="fa fa-check"></i> <b>7.3.5.15.</b> sqlite3_log()函数 </a> </li> <li class="chapter " data-level="7.3.5.16" data-path="printf/sqlite3debugprintf.html"> <a href="../printf/sqlite3debugprintf.html"> <i class="fa fa-check"></i> <b>7.3.5.16.</b> sqlite3DebugPrintf()函数 </a> </li> <li class="chapter " data-level="7.3.5.17" data-path="printf/sqlite3xprintf.html"> <a href="../printf/sqlite3xprintf.html"> <i class="fa fa-check"></i> <b>7.3.5.17.</b> sqlite3XPrintf()函数 </a> </li> </ul> </li> <li class="chapter " data-level="7.3.6" data-path="date/datecG22.html"> <a href="../date/datecG22.html"> <i class="fa fa-check"></i> <b>7.3.6.</b> date.c模块源码分析 </a> <ul class="articles"> <li class="chapter " data-level="7.3.6.1" data-path="date/datestruct.html"> <a href="../date/datestruct.html"> <i class="fa fa-check"></i> <b>7.3.6.1.</b> 主要结构体 </a> </li> <li class="chapter " data-level="7.3.6.2" data-path="date/getsystem.html"> <a href="../date/getsystem.html"> <i class="fa fa-check"></i> <b>7.3.6.2.</b> 获取系统读数 </a> </li> <li class="chapter " data-level="7.3.6.3" data-path="date/gettimediff.html"> <a href="../date/gettimediff.html"> <i class="fa fa-check"></i> <b>7.3.6.3.</b> 读取时区差异扩展表示格式 </a> </li> <li class="chapter " data-level="7.3.6.4" data-path="date/changetime.html"> <a href="../date/changetime.html"> <i class="fa fa-check"></i> <b>7.3.6.4.</b> 正常时间与儒略日数之间的相互转换 </a> </li> <li class="chapter " data-level="7.3.6.5" data-path="date/julian_day_number.html"> <a href="../date/julian_day_number.html"> <i class="fa fa-check"></i> <b>7.3.6.5.</b> 转换为Julian Day Number所发生的的错误个数 </a> </li> <li class="chapter " data-level="7.3.6.6" data-path="date/getcurrenttime.html"> <a href="../date/getcurrenttime.html"> <i class="fa fa-check"></i> <b>7.3.6.6.</b> 获取系统当前时间 </a> </li> <li class="chapter " data-level="7.3.6.7" data-path="date/grammaroptimize.html"> <a href="../date/grammaroptimize.html"> <i class="fa fa-check"></i> <b>7.3.6.7.</b> 时间戳的语法改良 </a> </li> <li class="chapter " data-level="7.3.6.8" data-path="date/timeshow.html"> <a href="../date/timeshow.html"> <i class="fa fa-check"></i> <b>7.3.6.8.</b> 时间的表示 </a> </li> </ul> </li> <li class="chapter " data-level="7.3.7" data-path="sqlite/utilCode.html"> <a href="../sqlite/utilCode.html"> <i class="fa fa-check"></i> <b>7.3.7.</b> util.c分析 </a> </li> <li class="chapter " data-level="7.3.8" data-path="utf.c&vacuum/utf.html"> <a href="../utf.c&vacuum/utf.html"> <i class="fa fa-check"></i> <b>7.3.8.</b> utf.c分析 </a> </li> <li class="chapter " data-level="7.3.9" data-path="date/ctimec.html"> <a href="../date/ctimec.html"> <i class="fa fa-check"></i> <b>7.3.9.</b> Ctime.c模块源码分析 </a> </li> <li class="chapter " data-level="7.3.10" data-path="printfc/printfc.html"> <a href="../printfc/printfc.html"> <i class="fa fa-check"></i> <b>7.3.10.</b> Printf.c </a> <ul class="articles"> <li class="chapter " data-level="7.3.10.1" data-path="printfc/updatecprgn.html"> <a href="../printfc/updatecprgn.html"> <i class="fa fa-check"></i> <b>7.3.10.1.</b> 功能 </a> </li> <li class="chapter " data-level="7.3.10.2" data-path="printfc/hdy.html"> <a href="../printfc/hdy.html"> <i class="fa fa-check"></i> <b>7.3.10.2.</b> 宏定义 </a> </li> <li class="chapter " data-level="7.3.10.3" data-path="printfc/jgt.html"> <a href="../printfc/jgt.html"> <i class="fa fa-check"></i> <b>7.3.10.3.</b> 结构体 </a> </li> <li class="chapter " data-level="7.3.10.4" data-path="printfc/function.html"> <a href="../printfc/function.html"> <i class="fa fa-check"></i> <b>7.3.10.4.</b> 函数 </a> <ul class="articles"> <li class="chapter " data-level="7.3.10.4.1" data-path="printfc/et_getdigit.html"> <a href="../printfc/et_getdigit.html"> <i class="fa fa-check"></i> <b>7.3.10.4.1.</b> et_getdigit </a> </li> <li class="chapter " data-level="7.3.10.4.2" data-path="printfc/sqlite3appendspace.html"> <a href="../printfc/sqlite3appendspace.html"> <i class="fa fa-check"></i> <b>7.3.10.4.2.</b> sqlite3AppendSpace </a> </li> <li class="chapter " data-level="7.3.10.4.3" data-path="printfc/sqlite3vxprintf.html"> <a href="../printfc/sqlite3vxprintf.html"> <i class="fa fa-check"></i> <b>7.3.10.4.3.</b> sqlite3VXPrintf </a> </li> <li class="chapter " data-level="7.3.10.4.4" data-path="printfc/qths.html"> <a href="../printfc/qths.html"> <i class="fa fa-check"></i> <b>7.3.10.4.4.</b> 其他函数 </a> </li> </ul> </li> </ul> </li> <li class="chapter " data-level="7.3.11" data-path="date/datec1.html"> <a href="../date/datec1.html"> <i class="fa fa-check"></i> <b>7.3.11.</b> date.c模块源码分析(1) </a> </li> <li class="chapter " data-level="7.3.12" data-path="date/datec.html"> <a href="../date/datec.html"> <i class="fa fa-check"></i> <b>7.3.12.</b> date.c模块源码分析(2) </a> </li> <li class="chapter " data-level="7.3.13" data-path="conclusion/forexample"> <a href="../conclusion/forexample"> <i class="fa fa-check"></i> <b>7.3.13.</b> forexample </a> </li> </ul> </li> <li class="chapter " data-level="7.4" data-path="sqlite/completec.html"> <a href="../sqlite/completec.html"> <i class="fa fa-check"></i> <b>7.4.</b> complete.c模块源码分析 </a> </li> <li class="chapter " data-level="7.5" data-path="sqlite/callbackc.html"> <a href="../sqlite/callbackc.html"> <i class="fa fa-check"></i> <b>7.5.</b> callback.c模块源码分析 </a> </li> <li class="chapter " data-level="7.6" data-path="sqlite/hash.html"> <a href="../sqlite/hash.html"> <i class="fa fa-check"></i> <b>7.6.</b> Hash </a> </li> <li class="chapter " data-level="7.7" data-path="introduce/sqliteG12.html"> <a href="../introduce/sqliteG12.html"> <i class="fa fa-check"></i> <b>7.7.</b> Sqlite源代码介绍 </a> </li> </ul> </li> <li class="chapter " data-level="8" data-path="clp/shellclp.html"> <a href="../clp/shellclp.html"> <i class="fa fa-check"></i> <b>8.</b> Shell模式下使用CLP </a> <ul class="articles"> <li class="chapter " data-level="8.1" data-path="clp/dosclp.html"> <a href="../clp/dosclp.html"> <i class="fa fa-check"></i> <b>8.1.</b> 命令行模式下的CLP </a> </li> <li class="chapter " data-level="8.2" data-path="function/api.html"> <a href="../function/api.html"> <i class="fa fa-check"></i> <b>8.2.</b> 重要的API函数 </a> </li> <li class="chapter " data-level="8.3" data-path="function/user.html"> <a href="../function/user.html"> <i class="fa fa-check"></i> <b>8.3.</b> 用户自定义函数 </a> </li> <li class="chapter " data-level="8.4" data-path="result/code.html"> <a href="../result/code.html"> <i class="fa fa-check"></i> <b>8.4.</b> 结果代码 </a> </li> </ul> </li> <li class="chapter " data-level="9" data-path="sqlfuncc/README.html"> <a href="../sqlfuncc/README.html"> <i class="fa fa-check"></i> <b>9.</b> 实现SQL的各种函数(func.c的源码分析) </a> <ul class="articles"> <li class="chapter " data-level="9.1" data-path="sqlfuncc/jisuan.html"> <a href="../sqlfuncc/jisuan.html"> <i class="fa fa-check"></i> <b>9.1.</b> 算术函数 </a> </li> <li class="chapter " data-level="9.2" data-path="sqlfuncc/zifu.html"> <a href="../sqlfuncc/zifu.html"> <i class="fa fa-check"></i> <b>9.2.</b> 字符处理函数 </a> </li> <li class="chapter " data-level="9.3" data-path="sqlfuncc/tiaojian.html"> <a href="../sqlfuncc/tiaojian.html"> <i class="fa fa-check"></i> <b>9.3.</b> 条件判断函数 </a> </li> <li class="chapter " data-level="9.4" data-path="sqlfuncc/jihe.html"> <a href="../sqlfuncc/jihe.html"> <i class="fa fa-check"></i> <b>9.4.</b> 集合函数 </a> </li> <li class="chapter " data-level="9.5" data-path="sqlfuncc/qita.html"> <a href="../sqlfuncc/qita.html"> <i class="fa fa-check"></i> <b>9.5.</b> 其他函数 </a> </li> </ul> </li> <li class="divider"></li> <li> <a href="http://www.gitbook.io/" target="blank" class="gitbook-link">Generated using GitBook</a> </li> </ul> </div> <div class="book-body"> <div class="body-inner"> <div class="page-wrapper" tabindex="-1"> <div class="book-progress"> <div class="bar"> <div class="inner" style="width: 16.205533596837945%;min-width: 16.007905138339922%;"></div> </div> <div class="chapters"> <a href="../index.html" title="首页" class="chapter done new-chapter" data-progress="0" style="left: 0%;"></a> <a href="../sqlite/sqliteintro.html" title="SQLite简介" class="chapter done new-chapter" data-progress="1" style="left: 0.1976284584980237%;"></a> <a href="../vdbemem/vdbememsqliteintro.html" title="SQLite特性" class="chapter done " data-progress="1.1" style="left: 0.3952569169960474%;"></a> <a href="../sqlite/introduce.html" title="推荐使用场景" class="chapter done " data-progress="1.2" style="left: 0.5928853754940712%;"></a> <a href="../sqlite/READMEG14.html" title="快速使用SQLite" class="chapter done " data-progress="1.3" style="left: 0.7905138339920948%;"></a> <a href="../sqlite/architecture.html" title="SQLite体系结构" class="chapter done new-chapter" data-progress="2" style="left: 0.9881422924901185%;"></a> <a href="../sqlite/system.html" title="体系结构" class="chapter done " data-progress="2.1" style="left: 1.1857707509881423%;"></a> <a href="../sqlite/sqlitemodule.html" title="各结构作用" class="chapter done " data-progress="2.2" style="left: 1.383399209486166%;"></a> <a href="../vdbemem/summary.html" title="进程模型" class="chapter done new-chapter" data-progress="3" style="left: 1.5810276679841897%;"></a> <a href="../vdbeInt&vdbemem887/whatIsVdbe.html" title="什么是VDBE" class="chapter done " data-progress="3.1" style="left: 1.7786561264822134%;"></a> <a href="../vdbeInt&vdbemem887/sqlite&vdbe.html" title="sqLite为什么要使用虚拟机" class="chapter done " data-progress="3.1.1" style="left: 1.976284584980237%;"></a> <a href="../vdbeInt&vdbemem887/vdbeProcess.html" title="VDBE的运行" class="chapter done " data-progress="3.1.2" style="left: 2.1739130434782608%;"></a> <a href="../vdbeInt&vdbemem887/vdbeInt.html" title="vdbeInt.h简介" class="chapter done " data-progress="3.1.3" style="left: 2.3715415019762847%;"></a> <a href="../vdbe/README.html" title="VDBE执行方法" class="chapter done " data-progress="3.2" style="left: 2.569169960474308%;"></a> <a href="../execuing_of_vdbec/README.html" title="SQLite执行与VDBE" class="chapter done " data-progress="3.3" style="left: 2.766798418972332%;"></a> <a href="../execuing_of_vdbec/op_init.html" title="OP_Init" class="chapter done " data-progress="3.3.1" style="left: 2.964426877470356%;"></a> <a href="../execuing_of_vdbec/op_transaction.html" title="OP_Transaction" class="chapter done " data-progress="3.3.2" style="left: 3.1620553359683794%;"></a> <a href="../execuing_of_vdbec/op_tablelock.html" title="OP_TableLock" class="chapter done " data-progress="3.3.3" style="left: 3.3596837944664033%;"></a> <a href="../execuing_of_vdbec/op_goto.html" title="OP_Goto" class="chapter done " data-progress="3.3.4" style="left: 3.5573122529644268%;"></a> <a href="../execuing_of_vdbec/op_readcookie.html" title="OP_ReadCookie" class="chapter done " data-progress="3.3.5" style="left: 3.7549407114624507%;"></a> <a href="../execuing_of_vdbec/op_if.html" title="OP_If" class="chapter done " data-progress="3.3.6" style="left: 3.952569169960474%;"></a> <a href="../execuing_of_vdbec/op_integer1.html" title="OP_Integer1" class="chapter done " data-progress="3.3.7" style="left: 4.150197628458498%;"></a> <a href="../execuing_of_vdbec/op_setcookie.html" title="OP_SetCookie" class="chapter done " data-progress="3.3.10" style="left: 4.3478260869565215%;"></a> <a href="../execuing_of_vdbec/op_integer2.html" title="OP_Integer2" class="chapter done " data-progress="3.3.9" style="left: 4.545454545454546%;"></a> <a href="../execuing_of_vdbec/op_createtable.html" title="OP_CreateTable" class="chapter done " data-progress="3.3.11" style="left: 4.743083003952569%;"></a> <a href="../execuing_of_vdbec/op_openwrite.html" title="OP_OpenWrite" class="chapter done " data-progress="3.3.12" style="left: 4.940711462450593%;"></a> <a href="../execuing_of_vdbec/op_newrowid.html" title="OP_NewRowid" class="chapter done " data-progress="3.3.13" style="left: 5.138339920948616%;"></a> <a href="../execuing_of_vdbec/op_null1.html" title="OP_Null1" class="chapter done " data-progress="3.3.14" style="left: 5.335968379446641%;"></a> <a href="../execuing_of_vdbec/op_insert.html" title="OP_Insert" class="chapter done " data-progress="3.3.15" style="left: 5.533596837944664%;"></a> <a href="../execuing_of_vdbec/op_close1.html" title="OP_Close1" class="chapter done " data-progress="3.3.16" style="left: 5.7312252964426875%;"></a> <a href="../execuing_of_vdbec/op_close2.html" title="OP_Close2" class="chapter done " data-progress="3.3.17" style="left: 5.928853754940712%;"></a> <a href="../execuing_of_vdbec/op_null2.html" title="OP_Null2" class="chapter done " data-progress="3.3.18" style="left: 6.126482213438735%;"></a> <a href="../execuing_of_vdbec/op_openwrite1.html" title="OP_OpenWrite1" class="chapter done " data-progress="3.3.19" style="left: 6.324110671936759%;"></a> <a href="../execuing_of_vdbec/op_mustbeint.html" title="OP_MustBeInt" class="chapter done " data-progress="3.3.20" style="left: 6.521739130434782%;"></a> <a href="../execuing_of_vdbec/op_notexists.html" title="OP_NotExists" class="chapter done " data-progress="3.3.21" style="left: 6.719367588932807%;"></a> <a href="../execuing_of_vdbec/op_rowid.html" title="OP_Rowid" class="chapter done " data-progress="3.3.22" style="left: 6.91699604743083%;"></a> <a href="../execuing_of_vdbec/op_isnull.html" title="OP_IsNull" class="chapter done " data-progress="3.3.23" style="left: 7.1146245059288535%;"></a> <a href="../execuing_of_vdbec/op_string.html" title="OP_String" class="chapter done " data-progress="3.3.24" style="left: 7.312252964426878%;"></a> <a href="../execuing_of_vdbec/op_string1.html" title="OP_String1" class="chapter done " data-progress="3.3.25" style="left: 7.509881422924901%;"></a> <a href="../execuing_of_vdbec/op_string2.html" title="OP_String2" class="chapter done " data-progress="3.3.26" style="left: 7.707509881422925%;"></a> <a href="../execuing_of_vdbec/op_copy.html" title="OP_Copy" class="chapter done " data-progress="3.3.27" style="left: 7.905138339920948%;"></a> <a href="../execuing_of_vdbec/op_string3.html" title="OP_String3" class="chapter done " data-progress="3.3.28" style="left: 8.102766798418973%;"></a> <a href="../execuing_of_vdbec/op_makerecord.html" title="OP_MakeRecord" class="chapter done " data-progress="3.3.29" style="left: 8.300395256916996%;"></a> <a href="../execuing_of_vdbec/op_insert1.html" title="OP_Insert1" class="chapter done " data-progress="3.3.30" style="left: 8.49802371541502%;"></a> <a href="../execuing_of_vdbec/op_close3.html" title="OP_Close3" class="chapter done " data-progress="3.3.31" style="left: 8.695652173913043%;"></a> <a href="../execuing_of_vdbec/op_integer3.html" title="OP_Integer3" class="chapter done " data-progress="3.3.32" style="left: 8.893280632411066%;"></a> <a href="../execuing_of_vdbec/op_setcookie1.html" title="OP_SetCookie1" class="chapter done " data-progress="3.3.33" style="left: 9.090909090909092%;"></a> <a href="../execuing_of_vdbec/op_parseschema.html" title="OP_ParseSchema" class="chapter done " data-progress="3.3.34" style="left: 9.288537549407115%;"></a> <a href="../execuing_of_vdbec/op_halt.html" title="OP_Halt" class="chapter done " data-progress="3.3.35" style="left: 9.486166007905139%;"></a> <a href="../execuing_procedure_of_vdbe/README.html" title="SQLite执行过程" class="chapter done " data-progress="3.4" style="left: 9.683794466403162%;"></a> <a href="../vdbeauxc/preview.html" title="vdbeaux.c源码概览" class="chapter done " data-progress="3.5" style="left: 9.881422924901186%;"></a> <a href="../vdbeauxc/intrduceandanaly.html" title="vdbeaux.c 源码介绍与分析" class="chapter done " data-progress="3.6" style="left: 10.079051383399209%;"></a> <a href="../vdbeauxc/createfame.html" title="创建vdbe结构体" class="chapter done " data-progress="3.6.1" style="left: 10.276679841897232%;"></a> <a href="../vdbeauxc/prepare.html" title="vdbe准备阶段" class="chapter done " data-progress="3.6.2" style="left: 10.474308300395258%;"></a> <a href="../vdbeauxc/update.html" title="相关修改函数" class="chapter done " data-progress="3.6.2.1" style="left: 10.671936758893281%;"></a> <a href="../vdbeauxc/assemble.html" title="配置函数" class="chapter done " data-progress="3.6.2.2" style="left: 10.869565217391305%;"></a> <a href="../vdbeauxc/xigou.html" title="析构函数" class="chapter done " data-progress="3.6.2.3" style="left: 11.067193675889328%;"></a> <a href="../vdbeauxc/debug.html" title="debug模式" class="chapter done " data-progress="3.6.3" style="left: 11.264822134387352%;"></a> <a href="../vdbeauxc/deleframe.html" title="删除vdbe结构体" class="chapter done " data-progress="3.6.3.1" style="left: 11.462450592885375%;"></a> <a href="../vdbeauxc/list.html" title="列出虚拟机中的程序清单" class="chapter done " data-progress="3.6.3.2" style="left: 11.660079051383399%;"></a> <a href="../vdbeauxc/display.html" title="显示部分" class="chapter done " data-progress="3.6.3.3" style="left: 11.857707509881424%;"></a> <a href="../vdbeauxc/alloc.html" title="分配空间" class="chapter done " data-progress="3.6.4" style="left: 12.055335968379447%;"></a> <a href="../vdbeauxc/init.html" title="初始化vdbe" class="chapter done " data-progress="3.6.5" style="left: 12.25296442687747%;"></a> <a href="../vdbeauxc/makeready.html" title="执行前的准备" class="chapter done " data-progress="3.6.6" style="left: 12.450592885375494%;"></a> <a href="../vdbeauxc/free.html" title="释放资源" class="chapter done " data-progress="3.6.7" style="left: 12.648221343873518%;"></a> <a href="../vdbeauxc/process.html" title="vdbe执行中的处理" class="chapter done " data-progress="3.6.8" style="left: 12.845849802371541%;"></a> <a href="../vdbeauxc/halt.html" title="函数sqlite3VdbeHalt" class="chapter done " data-progress="3.6.8.1" style="left: 13.043478260869565%;"></a> <a href="../vdbeauxc/stepresult.html" title="函数sqlite3VdbeResetStepResult" class="chapter done " data-progress="3.6.8.2" style="left: 13.24110671936759%;"></a> <a href="../vdbeauxc/transfererror.html" title="函数sqlite3VdbeTransferError" class="chapter done " data-progress="3.6.8.3" style="left: 13.438735177865613%;"></a> <a href="../vdbeauxc/reset.html" title="函数sqlite3VdbeReset" class="chapter done " data-progress="3.6.8.4" style="left: 13.636363636363637%;"></a> <a href="../vdbeauxc/finalize.html" title="函数sqlite3VdbeFinalize" class="chapter done " data-progress="3.6.8.5" style="left: 13.83399209486166%;"></a> <a href="../vdbeauxc/deleobjectanddelete.html" title="函数sqlite3VdbeDeleteObject和sqlite3VdbeDelete" class="chapter done " data-progress="3.6.8.6" style="left: 14.031620553359684%;"></a> <a href="../vdbeauxc/moveto.html" title="函数sqlite3VdbeCursorMoveto" class="chapter done " data-progress="3.6.8.7" style="left: 14.229249011857707%;"></a> <a href="../vdbeauxc/flowswap.html" title="函数u64 floatSwap" class="chapter done " data-progress="3.6.8.8" style="left: 14.42687747035573%;"></a> <a href="../vdbeauxc/serialput.html" title="函数sqlite3VdbeSerialPut" class="chapter done " data-progress="3.6.8.9" style="left: 14.624505928853756%;"></a> <a href="../vdbeauxc/unpackedrecord.html" title="函数sqlite3VdbeAllocUnpackedRecord" class="chapter done " data-progress="3.6.8.10" style="left: 14.82213438735178%;"></a> <a href="../vdbeauxc/statements.html" title="函数sqlite3ExpirePreparedStatements" class="chapter done " data-progress="3.6.8.11" style="left: 15.019762845849803%;"></a> <a href="../vdbeauxc/setvarmask.html" title="函数sqlite3VdbeSetVarmask" class="chapter done " data-progress="3.6.8.12" style="left: 15.217391304347826%;"></a> <a href="../vdbesort/preview2.html" title="vdbesort.c源码概览" class="chapter done " data-progress="3.7" style="left: 15.41501976284585%;"></a> <a href="../vdbesort/nintrodution.html" title="N-路归并的算法及数据结构说明" class="chapter done " data-progress="3.7.1" style="left: 15.612648221343873%;"></a> <a href="../vdbesort/structs.html" title="结构体定义" class="chapter done " data-progress="3.7.2" style="left: 15.810276679841897%;"></a> <a href="../vdbesort/functions.html" title="函数定义" class="chapter done " data-progress="3.7.3" style="left: 16.007905138339922%;"></a> <a href="../srcAnaly/README.html" title="关系查询处理器" class="chapter done new-chapter" data-progress="4" style="left: 16.205533596837945%;"></a> <a href="../srcAnaly/selectExec.html" title="查询解析和授权" class="chapter " data-progress="4.1" style="left: 16.40316205533597%;"></a> <a href="../sqlite/sqlasunderstoodbysqlite.html" title="SQLite中的SQL语句" class="chapter " data-progress="4.1.1" style="left: 16.600790513833992%;"></a> <a href="../dir2/selectgrammar.html" title="SELECT的语法图" class="chapter " data-progress="4.1.2" style="left: 16.798418972332016%;"></a> <a href="../dir2/selectexe.html" title="SQLite中SQL语句执行步骤" class="chapter " data-progress="4.1.3" style="left: 16.99604743083004%;"></a> <a href="../srcAnaly/keyFunc.html" title="sqlite查询处理的关键函数" class="chapter " data-progress="4.1.4" style="left: 17.193675889328063%;"></a> <a href="../dir2/selecttree.html" title="查询语法树" class="chapter " data-progress="4.1.5" style="left: 17.391304347826086%;"></a> <a href="../srcanaly/from.html" title="FROM子句" class="chapter " data-progress="4.1.6" style="left: 17.58893280632411%;"></a> <a href="../srcanaly/sqlitefrom.html" title="SQLite中FROM子句的使用" class="chapter " data-progress="4.1.6.1" style="left: 17.786561264822133%;"></a> <a href="../dir3/sqliteselectcolumnsfromexprlist.html" title="SQLite中FROM子句的实现" class="chapter " data-progress="4.1.6.2" style="left: 17.984189723320156%;"></a> <a href="../dir3/articledir.html" title="ON子句" class="chapter " data-progress="4.1.7" style="left: 18.181818181818183%;"></a> <a href="../dir3/on.html" title="SQLite中ON子句的使用" class="chapter " data-progress="4.1.7.1" style="left: 18.379446640316207%;"></a> <a href="../dir3/sqlitesqlite3jointypesetjoinexprsqliteprocessjoin.html" title="SQLite中ON子句的实现" class="chapter " data-progress="4.1.7.2" style="left: 18.57707509881423%;"></a> <a href="../authc/README.html" title="访问授权" class="chapter " data-progress="4.1.8" style="left: 18.774703557312254%;"></a> <a href="../srcanaly/authorization.html" title="SQLite的授权检查实现" class="chapter " data-progress="4.1.8.1" style="left: 18.972332015810277%;"></a> <a href="../authc/set.html" title="设置或清除访问授权" class="chapter " data-progress="4.1.8.2" style="left: 19.1699604743083%;"></a> <a href="../authc/authbadreturncode.html" title="授权返回一个非法的值" class="chapter " data-progress="4.1.8.3" style="left: 19.367588932806324%;"></a> <a href="../authc/authreadcol.html" title="验证数据库中表的列信息是否可访问" class="chapter " data-progress="4.1.8.4" style="left: 19.565217391304348%;"></a> <a href="../authc/tk_column.html" title="验证解析树中TK_COLUMN表达式是否可访问" class="chapter " data-progress="4.1.8.5" style="left: 19.76284584980237%;"></a> <a href="../authc/authcheck.html" title="使用给定的代码和参数的授权检查" class="chapter " data-progress="4.1.8.6" style="left: 19.960474308300395%;"></a> <a href="../authc/authcontext.html" title="利用栈存储解析树的授权内容" class="chapter " data-progress="4.1.8.7" style="left: 20.158102766798418%;"></a> <a href="../dir3/selectsourcedir.html" title="查询重写" class="chapter " data-progress="4.2" style="left: 20.35573122529644%;"></a> <a href="../dir3/rewritefunction.html" title="重写器的主要功能" class="chapter " data-progress="4.2.1" style="left: 20.553359683794465%;"></a> <a href="../optimalandquery/optimalquery.html" title="SQLite查询重写" class="chapter " data-progress="4.2.2" style="left: 20.75098814229249%;"></a> <a href="../optimalandquery/transcation.html" title="几类查询重写" class="chapter " data-progress="4.2.2.1" style="left: 20.948616600790515%;"></a> <a href="../optimalandquery/compress.html" title="子查询扁平化" class="chapter " data-progress="4.2.2.2" style="left: 21.14624505928854%;"></a> <a href="../optimalandquery/link.html" title="连接查询" class="chapter " data-progress="4.2.2.3" style="left: 21.343873517786562%;"></a> <a href="../dir3/wheredir.html" title="WHERE子句" class="chapter " data-progress="4.2.3" style="left: 21.541501976284586%;"></a> <a href="../dir3/where.html" title="WHERE子句具体使用" class="chapter " data-progress="4.2.3.1" style="left: 21.73913043478261%;"></a> <a href="../dir3/sqliteaddwheretermselectinnerloop.html" title="SQLite中使用addWhereTerm函数和selectInnerLoop函数" class="chapter " data-progress="4.2.3.2" style="left: 21.936758893280633%;"></a> <a href="../dir3/group_bydir.html" title="GROUP BY子句" class="chapter " data-progress="4.2.4" style="left: 22.134387351778656%;"></a> <a href="../dir3/group.html" title="GROUP子句具体使用" class="chapter " data-progress="4.2.4.1" style="left: 22.33201581027668%;"></a> <a href="../dir3/sqlitefinalizeaggfunctions.html" title="SQLite中finalizeAggFunctions函数" class="chapter " data-progress="4.2.4.2" style="left: 22.529644268774703%;"></a> <a href="../dir3/havingdir.html" title="Having子句" class="chapter " data-progress="4.2.5" style="left: 22.727272727272727%;"></a> <a href="../dir3/distinctdir.html" title="DISTINCT子句" class="chapter " data-progress="4.2.6" style="left: 22.92490118577075%;"></a> <a href="../dir3/361____alldistinct.html" title="all和distinct子句" class="chapter " data-progress="4.2.6.1" style="left: 23.122529644268774%;"></a> <a href="../dir3/codedistinct.html" title="codeDistinct函数" class="chapter " data-progress="4.2.6.2" style="left: 23.320158102766797%;"></a> <a href="../dir3/order_bydir.html" title="ORDER BY子句" class="chapter " data-progress="4.2.7" style="left: 23.51778656126482%;"></a> <a href="../dir3/order_by.html" title="ORDER BY子句具体应用" class="chapter " data-progress="4.2.7.1" style="left: 23.715415019762847%;"></a> <a href="../dir3/sqlitemultiselectorderby.html" title="SQLite中multiSelectOrderBy函数" class="chapter " data-progress="4.2.7.2" style="left: 23.91304347826087%;"></a> <a href="../dir3/limitdir.html" title="LIMIT子句" class="chapter " data-progress="4.2.8" style="left: 24.110671936758894%;"></a> <a href="../dir3/sqlitecomputelimitregisters.html" title="SQLite中computeLimitRegisters函数" class="chapter " data-progress="4.2.8.1" style="left: 24.308300395256918%;"></a> <a href="../dir3/offsetdir.html" title="OFFSET子句" class="chapter " data-progress="4.2.9" style="left: 24.50592885375494%;"></a> <a href="../dir3/other.html" title="另外一些重要的函数" class="chapter " data-progress="4.2.10" style="left: 24.703557312252965%;"></a> <a href="../dir3/sqlite3selectprep.html" title="sqlite3SelectPrep函数" class="chapter " data-progress="4.2.10.1" style="left: 24.90118577075099%;"></a> <a href="../dir3/sqlite3getvdbe.html" title="sqlite3GetVdbe函数" class="chapter " data-progress="4.2.10.2" style="left: 25.09881422924901%;"></a> <a href="../dir3/minmaxquery.html" title="minMaxQuery函数" class="chapter " data-progress="4.2.10.3" style="left: 25.296442687747035%;"></a> <a href="../queryoptiintro/queryoptiintro.html" title="查询优化器" class="chapter " data-progress="4.3" style="left: 25.49407114624506%;"></a> <a href="../queryoptiintro/queryoptiflow.html" title="查询优化流程" class="chapter " data-progress="4.3.1" style="left: 25.691699604743082%;"></a> <a href="../queryoptiintro/queryoptiop.html" title="SQLite中几种查询优化做的处理" class="chapter " data-progress="4.3.2" style="left: 25.889328063241106%;"></a> <a href="../queryoptiintro/queryoptistrategy.html" title="查询扫描策略" class="chapter " data-progress="4.3.3" style="left: 26.08695652173913%;"></a> <a href="../queryoptiintro/costmodule.html" title="查询策略代价模型及计算方式" class="chapter " data-progress="4.3.4" style="left: 26.284584980237153%;"></a> <a href="../analyzeanalyzec/README.html" title="与查询代价有关的处理-ANALYZE命令" class="chapter " data-progress="4.3.5" style="left: 26.48221343873518%;"></a> <a href="../analyzeanalyzec/analyzesql.html" title="Analyze的SQL语法" class="chapter " data-progress="4.3.5.1" style="left: 26.679841897233203%;"></a> <a href="../analyzeanalyzec/analyze.html" title="Analyze 命令接口" class="chapter " data-progress="4.3.5.2" style="left: 26.877470355731226%;"></a> <a href="../analyzeanalyzec/analyzedatabase.html" title="analyzeDatabase函数" class="chapter " data-progress="4.3.5.3" style="left: 27.07509881422925%;"></a> <a href="../analyzeanalyzec/analyzetable.html" title="analyzeTable函数" class="chapter " data-progress="4.3.5.4" style="left: 27.272727272727273%;"></a> <a href="../analyzeanalyzec/loadanalysis.html" title="loadAnalysis函数" class="chapter " data-progress="4.3.5.5" style="left: 27.470355731225297%;"></a> <a href="../analyzeanalyzec/analyzeonetable.html" title="analyzeOneTable函数" class="chapter " data-progress="4.3.5.6" style="left: 27.66798418972332%;"></a> <a href="../analyzeanalyzec/stat3initstat3pushstat3get.html" title="stat3Init函数,stat3Push函数,stat3Get函数" class="chapter " data-progress="4.3.5.7" style="left: 27.865612648221344%;"></a> <a href="../analyzeanalyzec/other.html" title="其他用到的一些函数" class="chapter " data-progress="4.3.5.8" style="left: 28.063241106719367%;"></a> <a href="../wherec/README.html" title="SQLite中查询优化的具体实现" class="chapter " data-progress="4.3.6" style="left: 28.26086956521739%;"></a> <a href="../wherec/sqlite3wherebegin.html" title="sqlite3WhereBegin函数" class="chapter " data-progress="4.3.6.1" style="left: 28.458498023715414%;"></a> <a href="../wherec/expranalyzeall.html" title="exprAnalyzeAll函数" class="chapter " data-progress="4.3.6.2" style="left: 28.656126482213438%;"></a> <a href="../wherec/expranalyze.html" title="exprAnalyze函数" class="chapter " data-progress="4.3.6.3" style="left: 28.85375494071146%;"></a> <a href="../wherec/bestbtreeindex.html" title="bestBtreeIndex函数" class="chapter " data-progress="4.3.6.4" style="left: 29.051383399209485%;"></a> <a href="../wherec/bestorclauseindex.html" title="bestOrClauseIndex函数" class="chapter " data-progress="4.3.6.5" style="left: 29.24901185770751%;"></a> <a href="../wherec/whererangescanest.html" title="whereRangeScanEst函数" class="chapter " data-progress="4.3.6.6" style="left: 29.446640316205535%;"></a> <a href="../wherec/codeoneloopstart.html" title="codeOneLoopStart函数" class="chapter " data-progress="4.3.6.7" style="left: 29.64426877470356%;"></a> <a href="../wherec/sqlite3whereend.html" title="sqlite3WhereEnd函数" class="chapter " data-progress="4.3.6.8" style="left: 29.841897233201582%;"></a> <a href="../wherec/wherec.html" title="where.c概述" class="chapter " data-progress="4.3.7" style="left: 30.039525691699605%;"></a> <a href="../wherec/wherecInfo/wherecprocess.html" title="where.c的执行过程" class="chapter " data-progress="4.3.7.1" style="left: 30.23715415019763%;"></a> <a href="../wherec/wherecInfo/structandfunc.html" title="where.c中主要结构体和函数调用关系" class="chapter " data-progress="4.3.7.2" style="left: 30.434782608695652%;"></a> <a href="../wherec/wherecInfo/struct.html" title="主要结构体" class="chapter " data-progress="4.3.7.2.1" style="left: 30.632411067193676%;"></a> <a href="../wherec/wherecInfo/func.html" title="主要函数调用关系" class="chapter " data-progress="4.3.7.2.2" style="left: 30.8300395256917%;"></a> <a href="../wherec/where.html" title="where子句的查询优化" class="chapter " data-progress="4.3.7.3" style="left: 31.027667984189723%;"></a> <a href="../wherec/whereOptimize/whereanalyze.html" title="WHERE子句分析" class="chapter " data-progress="4.3.7.3.1" style="left: 31.225296442687746%;"></a> <a href="../wherec/whereOptimize/between.html" title="BETWEEN语句优化" class="chapter " data-progress="4.3.7.3.2" style="left: 31.42292490118577%;"></a> <a href="../wherec/whereOptimize/or.html" title="OR语句优化" class="chapter " data-progress="4.3.7.3.3" style="left: 31.620553359683793%;"></a> <a href="../wherec/whereOptimize/like.html" title="LIKE语句优化" class="chapter " data-progress="4.3.7.3.4" style="left: 31.818181818181817%;"></a> <a href="../wherec/whereOptimize/skip-scan.html" title="Skip-Scan优化" class="chapter " data-progress="4.3.7.3.5" style="left: 32.015810276679844%;"></a> <a href="../wherec/whereOptimize/selmultindex.html" title="多重索引的选择" class="chapter " data-progress="4.3.7.3.6" style="left: 32.21343873517787%;"></a> <a href="../wherec/whereOptimize/coverindex.html" title="覆盖索引" class="chapter " data-progress="4.3.7.3.7" style="left: 32.41106719367589%;"></a> <a href="../wherec/whereOptimize/autoindex.html" title="自动索引" class="chapter " data-progress="4.3.7.3.8" style="left: 32.608695652173914%;"></a> <a href="../wherec/wherecsummary.html" title="wherecSummary" class="chapter " data-progress="4.3.7.4" style="left: 32.80632411067194%;"></a> <a href="../queryoptiintro/queryoptisummary.html" title="SQLite中查询优化方式的总结" class="chapter " data-progress="4.3.8" style="left: 33.00395256916996%;"></a> <a href="../dir2/introduction.html" title="查询执行器" class="chapter " data-progress="4.4" style="left: 33.201581027667984%;"></a> <a href="../dir2/dataalter.html" title="数据修改语句" class="chapter " data-progress="4.4.1" style="left: 33.39920948616601%;"></a> <a href="../buildc/buildcsqlite.html" title="Build.c分析" class="chapter " data-progress="4.4.2" style="left: 33.59683794466403%;"></a> <a href="../buildc/function.html" title="实现的功能" class="chapter " data-progress="4.4.2.1" style="left: 33.794466403162055%;"></a> <a href="../function/achieve.html" title="具体功能的实现" class="chapter " data-progress="4.4.2.2" style="left: 33.99209486166008%;"></a> <a href="../function/createtable.html" title="表的创建" class="chapter " data-progress="4.4.2.2.1" style="left: 34.1897233201581%;"></a> <a href="../function/del.html" title="表的删除" class="chapter " data-progress="4.4.2.2.2" style="left: 34.387351778656125%;"></a> <a href="../function/othertable.html" title="与表相关的操作" class="chapter " data-progress="4.4.2.2.3" style="left: 34.58498023715415%;"></a> <a href="../function/createView.html" title="视图的创建" class="chapter " data-progress="4.4.2.2.4" style="left: 34.78260869565217%;"></a> <a href="../index/create.html" title="索引的创建" class="chapter " data-progress="4.4.2.2.5" style="left: 34.980237154150196%;"></a> <a href="../index/select.html" title="索引的删除" class="chapter " data-progress="4.4.2.2.6" style="left: 35.17786561264822%;"></a> <a href="../index/free.html" title="释放索引(与删除索引相关)" class="chapter " data-progress="4.4.2.2.7" style="left: 35.37549407114624%;"></a> <a href="../index/other.html" title="与索引相关的其他操作" class="chapter " data-progress="4.4.2.2.8" style="left: 35.573122529644266%;"></a> <a href="../id/idcreate.html" title="ID序列的创建" class="chapter " data-progress="4.4.2.2.9" style="left: 35.77075098814229%;"></a> <a href="../id/idselect.html" title="ID序列的删除" class="chapter " data-progress="4.4.2.2.10" style="left: 35.96837944664031%;"></a> <a href="../id/idother.html" title="ID序列其他操作" class="chapter " data-progress="4.4.2.2.11" style="left: 36.16600790513834%;"></a> <a href="../routine/routinestart.html" title="事务的开始" class="chapter " data-progress="4.4.2.2.12" style="left: 36.36363636363637%;"></a> <a href="../routine/routinesubmit.html" title="事务的提交" class="chapter " data-progress="4.4.2.2.13" style="left: 36.56126482213439%;"></a> <a href="../routine/routinerollback.html" title="事务的回滚" class="chapter " data-progress="4.4.2.2.14" style="left: 36.758893280632414%;"></a> <a href="../function/temporarydb.html" title="临时数据库" class="chapter " data-progress="4.4.2.2.15" style="left: 36.95652173913044%;"></a> <a href="../function/write.html" title="写操作" class="chapter " data-progress="4.4.2.2.16" style="left: 37.15415019762846%;"></a> <a href="../function/exception.html" title="异常检查" class="chapter " data-progress="4.4.2.2.17" style="left: 37.351778656126484%;"></a> <a href="../insertc/README.html" title="Insert.c解析" class="chapter " data-progress="4.4.3" style="left: 37.54940711462451%;"></a> <a href="../insertc/insert.html" title="insert的主要关系" class="chapter " data-progress="4.4.3.1" style="left: 37.74703557312253%;"></a> <a href="../insertc/sqlite3opentable.html" title="sqlite3OpenTable()" class="chapter " data-progress="4.4.3.2" style="left: 37.944664031620555%;"></a> <a href="../insertc/sqlite3indexaffinitystr.html" title="sqlite3IndexAffinityStr()" class="chapter " data-progress="4.4.3.3" style="left: 38.14229249011858%;"></a> <a href="../insertc/sqlite3tableaffinitystr.html" title="sqlite3TableAffinityStr()" class="chapter " data-progress="4.4.3.4" style="left: 38.3399209486166%;"></a> <a href="../insertc/static_int_readstable.html" title="static int readsTable()" class="chapter " data-progress="4.4.3.5" style="left: 38.537549407114625%;"></a> <a href="../insertc/static_int_autoincbegin.html" title="static int autoIncBegin()" class="chapter " data-progress="4.4.3.6" style="left: 38.73517786561265%;"></a> <a href="../insertc/void_sqlite3autoincrementbegin.html" title="void sqlite3AutoincrementBegin()" class="chapter " data-progress="4.4.3.7" style="left: 38.93280632411067%;"></a> <a href="../insertc/static_void_autoincstep.html" title="static void autoIncStep()" class="chapter " data-progress="4.4.3.8" style="left: 39.130434782608695%;"></a> <a href="../insertc/sqlite3autoincrementend.html" title="sqlite3AutoincrementEnd()" class="chapter " data-progress="4.4.3.9" style="left: 39.32806324110672%;"></a> <a href="../insertc/xferoptimization.html" title="xferOptimization()" class="chapter " data-progress="4.4.3.10" style="left: 39.52569169960474%;"></a> <a href="../insertc/sqlite3insert.html" title="sqlite3Insert()" class="chapter " data-progress="4.4.3.11" style="left: 39.723320158102766%;"></a> <a href="../insertc/sqlite3generateconstraintchecks.html" title="sqlite3GenerateConstraintChecks()" class="chapter " data-progress="4.4.3.12" style="left: 39.92094861660079%;"></a> <a href="../insertc/sqlite3completeinsertion.html" title="sqlite3CompleteInsertion()" class="chapter " data-progress="4.4.3.13" style="left: 40.11857707509881%;"></a> <a href="../insertc/sqlite3opentableandindices.html" title="sqlite3OpenTableAndIndices()" class="chapter " data-progress="4.4.3.14" style="left: 40.316205533596836%;"></a> <a href="../insertc/xfercompatiblecollation.html" title="xferCompatibleCollation()" class="chapter " data-progress="4.4.3.15" style="left: 40.51383399209486%;"></a> <a href="../insertc/xfercompatibleindex.html" title="xferCompatibleIndex()" class="chapter " data-progress="4.4.3.16" style="left: 40.71146245059288%;"></a> <a href="../deletecupdatec/READMEG22.html" title="分析delete.c和update.c" class="chapter " data-progress="4.4.4" style="left: 40.90909090909091%;"></a> <a href="../deletecupdatec/cast.html" title="CAST函数" class="chapter " data-progress="4.4.4.1" style="left: 41.10671936758893%;"></a> <a href="../deletecupdatec/escape.html" title="ESCAPE" class="chapter " data-progress="4.4.4.2" style="left: 41.30434782608695%;"></a> <a href="../deletecupdatec/likeglob.html" title="Like和Glob" class="chapter " data-progress="4.4.4.3" style="left: 41.50197628458498%;"></a> <a href="../deletecupdatec/isnull.html" title="ISNULL" class="chapter " data-progress="4.4.4.4" style="left: 41.69960474308301%;"></a> <a href="../deletecupdatec/between.html" title="between" class="chapter " data-progress="4.4.4.5" style="left: 41.89723320158103%;"></a> <a href="../deletecupdatec/exist.html" title="EXISTS" class="chapter " data-progress="4.4.4.6" style="left: 42.094861660079054%;"></a> <a href="../deletecupdatec/case_when.html" title="case when" class="chapter " data-progress="4.4.4.7" style="left: 42.29249011857708%;"></a> <a href="../deletecupdatec/raise.html" title="RAISE()函数" class="chapter " data-progress="4.4.4.8" style="left: 42.4901185770751%;"></a> <a href="../deletecupdatec/delete.html" title="Delete.c中主要函数的实现及功能" class="chapter " data-progress="4.4.5" style="left: 42.687747035573125%;"></a> <a href="../deletecupdatec/sqlite3srclistlookup.html" title="sqlite3SrcListLookup()函数" class="chapter " data-progress="4.4.5.1" style="left: 42.88537549407115%;"></a> <a href="../deletecupdatec/sqlite3isreadonly.html" title="sqlite3IsReadOnly()函数" class="chapter " data-progress="4.4.5.2" style="left: 43.08300395256917%;"></a> <a href="../deletecupdatec/sqlite3materializeview.html" title="sqlite3MaterializeView()函数" class="chapter " data-progress="4.4.5.3" style="left: 43.280632411067195%;"></a> <a href="../deletecupdatec/sqlite3limitwhere.html" title="sqlite3LimitWhere()函数" class="chapter " data-progress="4.4.5.4" style="left: 43.47826086956522%;"></a> <a href="../deletecupdatec/sqlite3deletefrom.html" title="sqlite3DeleteFrom()函数" class="chapter " data-progress="4.4.5.5" style="left: 43.67588932806324%;"></a> <a href="../deletecupdatec/sqlite3generaterowdelete.html" title="sqlite3GenerateRowDelete()函数" class="chapter " data-progress="4.4.5.6" style="left: 43.873517786561266%;"></a> <a href="../deletecupdatec/sqlite3generaterowindexdelete.html" title="sqlite3GenerateRowIndexDelete()函数" class="chapter " data-progress="4.4.5.7" style="left: 44.07114624505929%;"></a> <a href="../deletecupdatec/sqlite3generateindexkey.html" title="sqlite3GenerateIndexKey()函数" class="chapter " data-progress="4.4.5.8" style="left: 44.26877470355731%;"></a> <a href="../updatec/updatec.html" title="Update.c简介" class="chapter " data-progress="4.4.6" style="left: 44.466403162055336%;"></a> <a href="../updatec/sqlite3columndefault.html" title="sqlite3ColumnDefault函数说明" class="chapter " data-progress="4.4.6.1" style="left: 44.66403162055336%;"></a> <a href="../updatec/sqlite3columndefault1.html" title="sqlite3ColumnDefault函数结构" class="chapter " data-progress="4.4.6.2" style="left: 44.86166007905138%;"></a> <a href="../updatec/sqlite3columndefault2.html" title="函数流程图" class="chapter " data-progress="4.4.6.3" style="left: 45.059288537549406%;"></a> <a href="../updatec/updatecsuhssm.html" title="sqlite3Update函数说明" class="chapter " data-progress="4.4.6.4" style="left: 45.25691699604743%;"></a> <a href="../updatec/updatecsuhsjg.html" title="sqlite3Update函数结构" class="chapter " data-progress="4.4.6.5" style="left: 45.45454545454545%;"></a> <a href="../updatec/updatecsuhslct.html" title="sqlite3Update函数流程图" class="chapter " data-progress="4.4.6.6" style="left: 45.65217391304348%;"></a> <a href="../updatec/updatecuphssm.html" title="updateVirtualtable函数说明" class="chapter " data-progress="4.4.6.7" style="left: 45.8498023715415%;"></a> <a href="../updatec/updatevirtualtable.html" title="updateVirtualtable函数结构" class="chapter " data-progress="4.4.6.8" style="left: 46.047430830039524%;"></a> <a href="../updatec/updatecuvhslct.html" title="updateVirtualtable函数流程图" class="chapter " data-progress="4.4.6.9" style="left: 46.24505928853755%;"></a> <a href="../deletecupdatec/update.html" title="Update.c中主要函数的实现及功能" class="chapter " data-progress="4.4.7" style="left: 46.44268774703557%;"></a> <a href="../deletecupdatec/sqlite3columndefault.html" title="sqlite3ColumnDefault()函数" class="chapter " data-progress="4.4.7.1" style="left: 46.640316205533594%;"></a> <a href="../deletecupdatec/sqlite3update.html" title="sqlite3Update()函数" class="chapter " data-progress="4.4.7.2" style="left: 46.83794466403162%;"></a> <a href="../deletecupdatec/updatevirtualtable.html" title="updateVirtualTable()函数" class="chapter " data-progress="4.4.7.3" style="left: 47.03557312252964%;"></a> <a href="../triggerc/triggerjj.html" title="Trigger.c" class="chapter " data-progress="4.4.8" style="left: 47.23320158102767%;"></a> <a href="../triggerc/jbyf.html" title="基本语法" class="chapter " data-progress="4.4.8.1" style="left: 47.430830039525695%;"></a> <a href="../triggerc/hsjs.html" title="函数介绍" class="chapter " data-progress="4.4.8.2" style="left: 47.62845849802372%;"></a> <a href="../triggerc/cfqmm.html" title="触发器编码(Code)" class="chapter " data-progress="4.4.8.3" style="left: 47.82608695652174%;"></a> <a href="../triggerc/triggerssssdfsd.html" title="sqlite3BeginTrigger和sqlite3FinishTrigger" class="chapter " data-progress="4.4.8.4" style="left: 48.023715415019765%;"></a> <a href="../triggerc/triggerstep.html" title="Step" class="chapter " data-progress="4.4.8.5" style="left: 48.22134387351779%;"></a> <a href="../alter_tablealterc/README.html" title="实现修改表功能ALTER TABLE(alter.c的源码分析)" class="chapter " data-progress="4.4.9" style="left: 48.41897233201581%;"></a> <a href="../alter_tablealterc/renametablefunc.html" title="重命名表的名称" class="chapter " data-progress="4.4.9.1" style="left: 48.616600790513836%;"></a> <a href="../alter_tablealterc/renameparentfunc.html" title="修改任何外键约束定义重命名表为父表" class="chapter " data-progress="4.4.9.2" style="left: 48.81422924901186%;"></a> <a href="../alter_tablealterc/renametriggerfunc.html" title="对触发器的表名做修改" class="chapter " data-progress="4.4.9.3" style="left: 49.01185770750988%;"></a> <a href="../alter_tablealterc/whereorname.html" title="创建表达式形式的文本" class="chapter " data-progress="4.4.9.4" style="left: 49.209486166007906%;"></a> <a href="../alter_tablealterc/whereforeignkeys.html" title="生成用来选择有外键约束的全部表的表达式文本" class="chapter " data-progress="4.4.9.5" style="left: 49.40711462450593%;"></a> <a href="../alter_tablealterc/ptab.html" title="删除和重新加载从数据库表pTab的内部模式" class="chapter " data-progress="4.4.9.6" style="left: 49.60474308300395%;"></a> <a href="../alter_tablealterc/issystemtable.html" title="判断一个系统表" class="chapter " data-progress="4.4.9.7" style="left: 49.80237154150198%;"></a> <a href="../alter_tablealterc/alterrenametable.html" title="删除表名并重命名为新表名" class="chapter " data-progress="4.4.9.8" style="left: 50%;"></a> <a href="../dir2/selectinit.html" title="生成,清空,删除SELECT查询树函数" class="chapter " data-progress="4.5" style="left: 50.19762845849802%;"></a> <a href="../queryoptiintro/sqlite.html" title="数据库扩展性" class="chapter " data-progress="4.6" style="left: 50.39525691699605%;"></a> <a href="../queryoptiintro/virtualtable.html" title="virtualtable虚表" class="chapter " data-progress="4.6.1" style="left: 50.59288537549407%;"></a> <a href="../utf.c&vacuum/vacuum.html" title="vacuum.c分析" class="chapter " data-progress="4.6.2" style="left: 50.790513833992094%;"></a> <a href="../loadextclegacyc/README.html" title="Loadext及clegacy.c文件解析" class="chapter " data-progress="4.6.3" style="left: 50.98814229249012%;"></a> <a href="../rtree/gs.html" title="R-tree概述" class="chapter " data-progress="4.6.4" style="left: 51.18577075098814%;"></a> <a href="../rtree/usertree.html" title="使用Rtree模块" class="chapter " data-progress="4.6.5" style="left: 51.383399209486164%;"></a> <a href="../rtree/creatertree.html" title="创建一个Rtree索引" class="chapter " data-progress="4.6.5.1" style="left: 51.58102766798419%;"></a> <a href="../rtree/getrtree.html" title="获取一个Rtree索引" class="chapter " data-progress="4.6.5.2" style="left: 51.77865612648221%;"></a> <a href="../rtree/queryrtree.html" title="查询一个Rtree索引" class="chapter " data-progress="4.6.5.3" style="left: 51.976284584980235%;"></a> <a href="../rtree/efficientuse.html" title="有效使用Rtree" class="chapter " data-progress="4.6.6" style="left: 52.17391304347826%;"></a> <a href="../rtree/tailorrtree.html" title="定制R树查询" class="chapter " data-progress="4.6.7" style="left: 52.37154150197628%;"></a> <a href="../rtree/xgeom.html" title="旧版本xGeom回调函数" class="chapter " data-progress="4.6.7.1" style="left: 52.569169960474305%;"></a> <a href="../rtree/xqueryfunc.html" title="全新xQueryFunc回调函数" class="chapter " data-progress="4.6.7.2" style="left: 52.76679841897233%;"></a> <a href="../rtree/tailorCare.html" title="定制查询注意事项" class="chapter " data-progress="4.6.7.3" style="left: 52.96442687747036%;"></a> <a href="../rtree/READMEStruct.html" title="SQLiteR树结构" class="chapter " data-progress="4.6.8" style="left: 53.16205533596838%;"></a> <a href="../rtree/NodeStruct.html" title="结点结构" class="chapter " data-progress="4.6.8.1" style="left: 53.359683794466406%;"></a> <a href="../rtree/CellStruct.html" title="结点单元结构" class="chapter " data-progress="4.6.8.2" style="left: 53.55731225296443%;"></a> <a href="../rtree/READMEImpention.html" title="R树特点及算法实现" class="chapter " data-progress="4.6.9" style="left: 53.75494071146245%;"></a> <a href="../rtree/Searing.html" title="查找" class="chapter " data-progress="4.6.9.1" style="left: 53.952569169960476%;"></a> <a href="../rtree/Insertion.html" title="插入" class="chapter " data-progress="4.6.9.2" style="left: 54.1501976284585%;"></a> <a href="../rtree/Deletion.html" title="删除" class="chapter " data-progress="4.6.9.3" style="left: 54.34782608695652%;"></a> <a href="../rtree/Update.html" title="更新" class="chapter " data-progress="4.6.9.4" style="left: 54.54545454545455%;"></a> <a href="../rtree/QSplit.html" title="平方分裂" class="chapter " data-progress="4.6.9.5" style="left: 54.74308300395257%;"></a> <a href="../rtree/LinearSplit.html" title="线性分裂" class="chapter " data-progress="4.6.9.6" style="left: 54.940711462450594%;"></a> <a href="../rtree/READMEOptimize.html" title="R*树优化" class="chapter " data-progress="4.6.10" style="left: 55.13833992094862%;"></a> <a href="../rtree/local.html" title="局部优化" class="chapter " data-progress="4.6.10.1" style="left: 55.33596837944664%;"></a> <a href="../rtree/all.html" title="整体优化" class="chapter " data-progress="4.6.10.2" style="left: 55.533596837944664%;"></a> <a href="../fts1/cjcode.html" title="全文索引" class="chapter " data-progress="4.6.11" style="left: 55.73122529644269%;"></a> <a href="../fts1/fts.html" title="全文检索(full-text search)" class="chapter " data-progress="4.6.12" style="left: 55.92885375494071%;"></a> <a href="../fts1/indexO.html" title="索引的组织结构" class="chapter " data-progress="4.6.12.1" style="left: 56.126482213438734%;"></a> <a href="../fts1/indexC.html" title="索引的创建" class="chapter " data-progress="4.6.12.2" style="left: 56.32411067193676%;"></a> <a href="../fts1/search.html" title="索引的搜索" class="chapter " data-progress="4.6.12.3" style="left: 56.52173913043478%;"></a> <a href="../lemon/README.html" title="Lemon语法分析器模板文件" class="chapter " data-progress="4.6.13" style="left: 56.719367588932805%;"></a> <a href="../sqlite/sqliteG2.html" title="分词器" class="chapter " data-progress="4.6.14" style="left: 56.91699604743083%;"></a> <a href="../sqlite/tokenizer.html" title="Tokenizer运行原理" class="chapter " data-progress="4.6.14.1" style="left: 57.11462450592885%;"></a> <a href="../sqlite/code.html" title="代码code发生器 " class="chapter " data-progress="4.6.14.2" style="left: 57.312252964426875%;"></a> <a href="../sqlite/fts3.html" title="FTS3概述" class="chapter " data-progress="4.6.14.3" style="left: 57.5098814229249%;"></a> <a href="../sqlite/fts_tokenizer.html" title="分词器:FTS tokenizer分析" class="chapter " data-progress="4.6.14.4" style="left: 57.70750988142292%;"></a> <a href="../sqlite/16____tokenizers.html" title="自定义(用户)实现tokenizers" class="chapter " data-progress="4.6.14.5" style="left: 57.905138339920946%;"></a> <a href="../fts3_exprc/fts3.html" title="FTS3" class="chapter " data-progress="4.6.15" style="left: 58.10276679841897%;"></a> <a href="../fts3_exprc/fts3_exprcdoc.html" title="fts3_expr简介" class="chapter " data-progress="4.6.15.1" style="left: 58.30039525691699%;"></a> <a href="../fts3_exprc/parsecontext.html" title="ParseContext结构体" class="chapter " data-progress="4.6.15.2" style="left: 58.49802371541502%;"></a> <a href="../fts3_exprc/getnexttoken.html" title="getNextToken()函数" class="chapter " data-progress="4.6.15.3" style="left: 58.69565217391305%;"></a> <a href="../fts3_exprc/getnextstring.html" title="getNextString()函数" class="chapter " data-progress="4.6.15.4" style="left: 58.89328063241107%;"></a> <a href="../fts3_exprc/getnextnode.html" title="getNextNode()函数" class="chapter " data-progress="4.6.15.5" style="left: 59.09090909090909%;"></a> <a href="../fts3_exprc/insertbinaryoperator.html" title="insertBinaryOperator()函数" class="chapter " data-progress="4.6.15.6" style="left: 59.28853754940712%;"></a> <a href="../fts3_exprc/fts3exprparse.html" title="fts3ExprParse()函数" class="chapter " data-progress="4.6.15.7" style="left: 59.48616600790514%;"></a> <a href="../fts3_exprc/sqlite3fts3exprparse.html" title="sqlite3Fts3ExprParse()函数" class="chapter " data-progress="4.6.15.8" style="left: 59.683794466403164%;"></a> <a href="../optimalandquery/query.html" title="在SQLite3下查询数据" class="chapter " data-progress="4.7" style="left: 59.88142292490119%;"></a> <a href="../srcAnaly/otherFunc.html" title="其它一些函数的功能" class="chapter " data-progress="4.8" style="left: 60.07905138339921%;"></a> <a href="../summary/READMEG1.html" title="存储管理" class="chapter new-chapter" data-progress="5" style="left: 60.276679841897234%;"></a> <a href="../summary/spacecontrol.html" title="文件系统" class="chapter " data-progress="5.1" style="left: 60.47430830039526%;"></a> <a href="../functionandstructbody/analysis.html" title="文件函数及结构体分析" class="chapter " data-progress="5.1.1" style="left: 60.67193675889328%;"></a> <a href="../third/fenxi.html" title="系统接口" class="chapter " data-progress="5.1.2" style="left: 60.869565217391305%;"></a> <a href="../third/xjklc.html" title="简析打开数据库流程" class="chapter " data-progress="5.1.2.1" style="left: 61.06719367588933%;"></a> <a href="../third/hsjg.html" title="简析os_win.c文件的函数结构" class="chapter " data-progress="5.1.2.2" style="left: 61.26482213438735%;"></a> <a href="../third/sjz.html" title="简析SQLite的锁机制" class="chapter " data-progress="5.1.2.3" style="left: 61.462450592885375%;"></a> <a href="../third/sxlc.html" title="SQLite在Windows系统上的锁机制实现流程" class="chapter " data-progress="5.1.2.4" style="left: 61.6600790513834%;"></a> <a href="../third/sxym.html" title="锁机制在Windows中的实现源码" class="chapter " data-progress="5.1.2.5" style="left: 61.85770750988142%;"></a> <a href="../filestruct/introduction.html" title="文件结构" class="chapter " data-progress="5.1.2.6" style="left: 62.055335968379445%;"></a> <a href="../functionmainimplement/introduction.html" title="功能的主要实现" class="chapter " data-progress="5.1.2.7" style="left: 62.25296442687747%;"></a> <a href="../summary/filesysteminterface" title="filesysteminterface" class="chapter " data-progress="5.1.3" style="left: 62.45059288537549%;"></a> <a href="../B-treeImplementation/introduction.html" title="SQLite中B-tree的实现" class="chapter " data-progress="5.2" style="left: 62.648221343873516%;"></a> <a href="../B-treeImplementation/sqliteb-tree.html" title="SQLite中的B-tree " class="chapter " data-progress="5.2.1" style="left: 62.84584980237154%;"></a> <a href="../B-treeImplementation/hierarchicalorganization.html" title="SQLite层次化数据组织" class="chapter " data-progress="5.2.2" style="left: 63.04347826086956%;"></a> <a href="../B-treeImplementation/overflow.html" title="页面溢出" class="chapter " data-progress="5.2.3" style="left: 63.241106719367586%;"></a> <a href="../B-treeImplementation/b-tree_api.html" title="B-tree API" class="chapter " data-progress="5.2.4" style="left: 63.43873517786561%;"></a> <a href="../B-treeImplementation/implement.html" title="实现的技术细节" class="chapter " data-progress="5.2.5" style="left: 63.63636363636363%;"></a> <a href="../ljPager/pager.html" title="Pager概述" class="chapter " data-progress="5.3" style="left: 63.83399209486166%;"></a> <a href="../ljPager/21.html" title="Pager状态" class="chapter " data-progress="5.3.1" style="left: 64.03162055335969%;"></a> <a href="../ljPager/22.html" title="Pager的数据库文件页" class="chapter " data-progress="5.3.2" style="left: 64.2292490118577%;"></a> <a href="../ljPager/23.html" title="Pager的相关参数" class="chapter " data-progress="5.3.3" style="left: 64.42687747035573%;"></a> <a href="../ljPager/24.html" title="页面类型" class="chapter " data-progress="5.3.4" style="left: 64.62450592885375%;"></a> <a href="../ljPager/25.html" title="Pager的状态" class="chapter " data-progress="5.3.5" style="left: 64.82213438735178%;"></a> <a href="../ljPager/26.html" title="Pager的结构" class="chapter " data-progress="5.3.6" style="left: 65.0197628458498%;"></a> <a href="../ljPager/27.html" title="日志" class="chapter " data-progress="5.3.7" style="left: 65.21739130434783%;"></a> <a href="../ljPager/28.html" title="页面缓存" class="chapter " data-progress="5.3.8" style="left: 65.41501976284584%;"></a> <a href="../ljPager/29.html" title="锁机制" class="chapter " data-progress="5.3.9" style="left: 65.61264822134387%;"></a> <a href="../ljPager/sqlitepager.html" title="Pager的运行流程概述" class="chapter " data-progress="5.4" style="left: 65.81027667984189%;"></a> <a href="../ljPager/31.html" title="打开/关闭一个页面连接" class="chapter " data-progress="5.4.1" style="left: 66.00790513833992%;"></a> <a href="../ljPager/32.html" title="配置页面对象的函数" class="chapter " data-progress="5.4.2" style="left: 66.20553359683794%;"></a> <a href="../ljPager/33.html" title="获取和释放页面引用的函数" class="chapter " data-progress="5.4.3" style="left: 66.40316205533597%;"></a> <a href="../ljPager/34.html" title="对页面引用的操作" class="chapter " data-progress="5.4.4" style="left: 66.60079051383399%;"></a> <a href="../ljPager/35.html" title="管理页面事务和保存点的函数" class="chapter " data-progress="5.4.5" style="left: 66.79841897233202%;"></a> <a href="../ljPager/36.html" title="查询页面状态/配置" class="chapter " data-progress="5.4.6" style="left: 66.99604743083005%;"></a> <a href="../ljPager/37.html" title="截断数据库文件" class="chapter " data-progress="5.4.7" style="left: 67.19367588932806%;"></a> <a href="../ljPager/38.html" title="测试/调试" class="chapter " data-progress="5.4.8" style="left: 67.3913043478261%;"></a> <a href="../cache analysis/pager/pagecache.html" title="页面缓冲管理" class="chapter " data-progress="5.5" style="left: 67.58893280632411%;"></a> <a href="../cache analysis/pager/cachemanage.html" title="缓存管理" class="chapter " data-progress="5.5.1" style="left: 67.78656126482214%;"></a> <a href="../cache analysis/pager/cacheorg.html" title="缓存组织" class="chapter " data-progress="5.5.2" style="left: 67.98418972332016%;"></a> <a href="../cache analysis/pager/cache.html" title="cache具体结构" class="chapter " data-progress="5.6" style="left: 68.18181818181819%;"></a> <a href="../cache analysis/pager/struct_pcachestruct_pcach1/pcahcevspcache1.html" title="Struct PCache与Struct PCach1" class="chapter " data-progress="5.6.1" style="left: 68.3794466403162%;"></a> <a href="../cache analysis/pager/struct_pcache_vs_struct_pcache1/pghdrvspghdr1.html" title="Struct PCache VS Struct PCache1" class="chapter " data-progress="5.6.2" style="left: 68.57707509881423%;"></a> <a href="../cache analysis/pager/struct_pghdr_1struct_pcache1/pghdr1andpcache1.html" title="struct PgHdr 1与struct PCache1" class="chapter " data-progress="5.6.3" style="left: 68.77470355731225%;"></a> <a href="../cache analysis/pager/cache/cachestucture.html" title="cache内存结构" class="chapter " data-progress="5.6.4" style="left: 68.97233201581028%;"></a> <a href="../cache analysis/pager/struct_pgroupstruct_pcacheglobal/pgroupandpcacheglobal.html" title="Struct PGroup与Struct PCacheGlobal" class="chapter " data-progress="5.6.5" style="left: 69.1699604743083%;"></a> <a href="../bit/bitvecintro.html" title="Bitvec.c介绍" class="chapter " data-progress="5.7" style="left: 69.36758893280633%;"></a> <a href="../bit/achieve.html" title="具体实现及源码分析" class="chapter " data-progress="5.7.1" style="left: 69.56521739130434%;"></a> <a href="../References/introduction.html" title="事务:并发控制和恢复" class="chapter new-chapter" data-progress="6" style="left: 69.76284584980237%;"></a> <a href="../lockandimplement/introduction.html" title="SQLite不同模式的锁与实现" class="chapter " data-progress="6.1" style="left: 69.96047430830039%;"></a> <a href="../lockandimplement/machining.html" title="SQLite锁机制简介" class="chapter " data-progress="6.1.1" style="left: 70.15810276679842%;"></a> <a href="../lockandimplement/method.html" title="文件加锁方法" class="chapter " data-progress="6.1.2" style="left: 70.35573122529644%;"></a> <a href="../lockandimplement/posix.html" title="POSIX locking" class="chapter " data-progress="6.1.2.1" style="left: 70.55335968379447%;"></a> <a href="../lockandimplement/noop.html" title="No-op Locking" class="chapter " data-progress="6.1.2.2" style="left: 70.75098814229248%;"></a> <a href="../lockandimplement/dotfile.html" title="dot-file Locking" class="chapter " data-progress="6.1.2.3" style="left: 70.94861660079052%;"></a> <a href="../lockandimplement/flock.html" title="flock Locking" class="chapter " data-progress="6.1.2.4" style="left: 71.14624505928853%;"></a> <a href="../lockandimplement/semaphore.html" title="Named Semaphore Locking" class="chapter " data-progress="6.1.2.5" style="left: 71.34387351778656%;"></a> <a href="../lockandimplement/afp.html" title="AFP Locking" class="chapter " data-progress="6.1.2.6" style="left: 71.54150197628458%;"></a> <a href="../lockandimplement/function.html" title="各个锁机制实现函数" class="chapter " data-progress="6.1.3" style="left: 71.73913043478261%;"></a> <a href="../part6/1.html" title="SQlite互斥锁分析" class="chapter " data-progress="6.2" style="left: 71.93675889328063%;"></a> <a href="../part6/mutexh.html" title="mutex.h" class="chapter " data-progress="6.2.1" style="left: 72.13438735177866%;"></a> <a href="../part6/mutexc.html" title="mutex.c" class="chapter " data-progress="6.2.2" style="left: 72.33201581027669%;"></a> <a href="../part6/mutex.html" title="Mutex初始化" class="chapter " data-progress="6.2.2.1" style="left: 72.5296442687747%;"></a> <a href="../part6/enter.html" title="互斥体enter使用" class="chapter " data-progress="6.2.2.2" style="left: 72.72727272727273%;"></a> <a href="../part6/try.html" title="互斥体try使用" class="chapter " data-progress="6.2.2.3" style="left: 72.92490118577075%;"></a> <a href="../part6/mutex_w32c.html" title="Mutex_w32.c" class="chapter " data-progress="6.2.3" style="left: 73.12252964426878%;"></a> <a href="../part6/631.html" title="互斥锁结构体" class="chapter " data-progress="6.2.3.1" style="left: 73.3201581027668%;"></a> <a href="../part6/632.html" title="设置结构体下的锁的函数指针" class="chapter " data-progress="6.2.3.2" style="left: 73.51778656126483%;"></a> <a href="../part6/633.html" title="初始化互斥锁" class="chapter " data-progress="6.2.3.3" style="left: 73.71541501976284%;"></a> <a href="../part6/6331.html" title="互斥锁结构体分配" class="chapter " data-progress="6.2.3.3.1" style="left: 73.91304347826087%;"></a> <a href="../part6/634.html" title="请求锁" class="chapter " data-progress="6.2.3.4" style="left: 74.11067193675889%;"></a> <a href="../part6/635.html" title="销毁锁" class="chapter " data-progress="6.2.3.5" style="left: 74.30830039525692%;"></a> <a href="../part6/mutex_unixc.html" title="mutex_unix.c" class="chapter " data-progress="6.2.4" style="left: 74.50592885375494%;"></a> <a href="../part6/641.html" title="互斥锁结构体" class="chapter " data-progress="6.2.4.1" style="left: 74.70355731225297%;"></a> <a href="../part6/642.html" title="函数功能" class="chapter " data-progress="6.2.4.2" style="left: 74.90118577075098%;"></a> <a href="../part6/mutex_noopc.html" title="mutex_noop.c" class="chapter " data-progress="6.2.5" style="left: 75.09881422924902%;"></a> <a href="../part6/451.html" title="非调试情况" class="chapter " data-progress="6.2.5.1" style="left: 75.29644268774703%;"></a> <a href="../part6/652.html" title="调试的情况" class="chapter " data-progress="6.2.5.2" style="left: 75.49407114624506%;"></a> <a href="../part6/memjournalc.html" title="memjournal.c" class="chapter " data-progress="6.2.6" style="left: 75.69169960474308%;"></a> <a href="../part6/661.html" title="日志相关存储结构" class="chapter " data-progress="6.2.6.1" style="left: 75.88932806324111%;"></a> <a href="../part6/6611.html" title="函数指针结构体" class="chapter " data-progress="6.2.6.1.1" style="left: 76.08695652173913%;"></a> <a href="../part6/662.html" title="函数功能表" class="chapter " data-progress="6.2.6.2" style="left: 76.28458498023716%;"></a> <a href="../part6/663.html" title="打开内存日志" class="chapter " data-progress="6.2.6.3" style="left: 76.48221343873517%;"></a> <a href="../part6/664.html" title="读取内存日志" class="chapter " data-progress="6.2.6.4" style="left: 76.6798418972332%;"></a> <a href="../part6/665.html" title="是否为内存日志文件" class="chapter " data-progress="6.2.6.5" style="left: 76.87747035573122%;"></a> <a href="../part5/1.html" title="memjournal.c" class="chapter " data-progress="6.3" style="left: 77.07509881422925%;"></a> <a href="../part5/51.html" title="函数及结构体功能" class="chapter " data-progress="6.3.1" style="left: 77.27272727272727%;"></a> <a href="../wal/wal.html" title="Wal的介绍" class="chapter " data-progress="6.4" style="left: 77.4703557312253%;"></a> <a href="../wal/README.html" title="Wal的工作原理" class="chapter " data-progress="6.5" style="left: 77.66798418972331%;"></a> <a href="../wal/wal1.html" title="Wal的优缺点" class="chapter " data-progress="6.5.1" style="left: 77.86561264822134%;"></a> <a href="../wal/work.html" title="工作原理" class="chapter " data-progress="6.5.2" style="left: 78.06324110671937%;"></a> <a href="../wal/filestyle.html" title="Wal文件格式" class="chapter " data-progress="6.5.3" style="left: 78.26086956521739%;"></a> <a href="../wal/checksumcheck.html" title="校验" class="chapter " data-progress="6.5.4" style="left: 78.45849802371542%;"></a> <a href="../wal/readread.html" title="读写事务" class="chapter " data-progress="6.5.5" style="left: 78.65612648221344%;"></a> <a href="../wal/savepointsvae.html" title="保存点" class="chapter " data-progress="6.5.6" style="left: 78.85375494071147%;"></a> <a href="../wal/ability.html" title="性能问题" class="chapter " data-progress="6.5.7" style="left: 79.05138339920948%;"></a> <a href="../wal/checkpointcheckpoint.html" title="检查点" class="chapter " data-progress="6.5.8" style="left: 79.24901185770752%;"></a> <a href="../references/lockandmutex.html" title="lockandmutex" class="chapter " data-progress="6.6" style="left: 79.44664031620553%;"></a> <a href="../introduce/READMEG12.html" title="共享组件" class="chapter new-chapter" data-progress="7" style="left: 79.64426877470356%;"></a> <a href="../introduce/crewG12.html" title="目录管理器" class="chapter " data-progress="7.1" style="left: 79.84189723320158%;"></a> <a href="../introduce/workG12.html" title="内存分配器" class="chapter " data-progress="7.2" style="left: 80.03952569169961%;"></a> <a href="../part2/README.html" title="动态内存分配器" class="chapter " data-progress="7.2.1" style="left: 80.23715415019763%;"></a> <a href="../part2/mem0c.html" title="空操作内存分配器(mem0.c)" class="chapter " data-progress="7.2.1.1" style="left: 80.43478260869566%;"></a> <a href="../part2/mem1c.html" title=" 缺省内存分配器(mem1.c)" class="chapter " data-progress="7.2.1.2" style="left: 80.63241106719367%;"></a> <a href="../part2/mem2c.html" title="调试内存分配器(mem2.c)" class="chapter " data-progress="7.2.1.3" style="left: 80.8300395256917%;"></a> <a href="../part2/backtrace.html" title="关于backtrace" class="chapter " data-progress="7.2.1.3.1" style="left: 81.02766798418972%;"></a> <a href="../part2/2_3_2.html" title="设置哨兵对内存破坏进行检查" class="chapter " data-progress="7.2.1.3.2" style="left: 81.22529644268775%;"></a> <a href="../part2/unfree_list.html" title="通过unfree list检查内存泄露" class="chapter " data-progress="7.2.1.3.3" style="left: 81.42292490118577%;"></a> <a href="../part2/2_4.html" title="内存分配函数" class="chapter " data-progress="7.2.1.4" style="left: 81.6205533596838%;"></a> <a href="../mem/README.html" title="内存分配器" class="chapter " data-progress="7.2.2" style="left: 81.81818181818181%;"></a> <a href="../mem/article.html" title="mem0.c" class="chapter " data-progress="7.2.2.1" style="left: 82.01581027667984%;"></a> <a href="../mem/mem1c.html" title="mem1.c" class="chapter " data-progress="7.2.2.2" style="left: 82.21343873517786%;"></a> <a href="../mem/mem2c.html" title="mem2.c" class="chapter " data-progress="7.2.2.3" style="left: 82.41106719367589%;"></a> <a href="../mem/mem3c.html" title="mem3.c" class="chapter " data-progress="7.2.2.4" style="left: 82.6086956521739%;"></a> <a href="../mem/mem4c.html" title="mem5.c" class="chapter " data-progress="7.2.2.5" style="left: 82.80632411067194%;"></a> <a href="../part3/README.html" title="Mem3.c代码分析" class="chapter " data-progress="7.2.3" style="left: 83.00395256916995%;"></a> <a href="../part3/mem3c.html" title="Mem3.c功能概述" class="chapter " data-progress="7.2.3.1" style="left: 83.20158102766798%;"></a> <a href="../part3/3_1.html" title="名词及相关概念" class="chapter " data-progress="7.2.3.2" style="left: 83.39920948616601%;"></a> <a href="../part3/3_3.html" title="块存储结构 " class="chapter " data-progress="7.2.3.3" style="left: 83.59683794466403%;"></a> <a href="../part3/3_3_1.html" title="内存分配结构体 " class="chapter " data-progress="7.2.3.3.1" style="left: 83.79446640316206%;"></a> <a href="../part3/3_4.html" title="Mem3.c函数列表" class="chapter " data-progress="7.2.3.4" style="left: 83.99209486166008%;"></a> <a href="../part3/3_5.html" title="函数代码解析" class="chapter " data-progress="7.2.3.5" style="left: 84.18972332015811%;"></a> <a href="../part4/article.html" title="mem5.c" class="chapter " data-progress="7.2.4" style="left: 84.38735177865613%;"></a> <a href="../part4/41_mem5c.html" title="mem5.c功能概述" class="chapter " data-progress="7.2.4.1" style="left: 84.58498023715416%;"></a> <a href="../part4/mem5cc.html" title="mem5.c调用的C接口" class="chapter " data-progress="7.2.4.2" style="left: 84.78260869565217%;"></a> <a href="../part4/43.html" title="名词及相关概念" class="chapter " data-progress="7.2.4.3" style="left: 84.9802371541502%;"></a> <a href="../part4/44.html" title="函数及结构体功能" class="chapter " data-progress="7.2.4.4" style="left: 85.17786561264822%;"></a> <a href="../part4/45.html" title="重要代码解析" class="chapter " data-progress="7.2.4.5" style="left: 85.37549407114625%;"></a> <a href="../mallocc/README.html" title="Malloc.c" class="chapter " data-progress="7.2.5" style="left: 85.57312252964427%;"></a> <a href="../mallocc/future.html" title="特性" class="chapter " data-progress="7.2.5.1" style="left: 85.7707509881423%;"></a> <a href="../mallocc/test.html" title="测试" class="chapter " data-progress="7.2.5.2" style="left: 85.96837944664031%;"></a> <a href="../mallocc/config.html" title="配置" class="chapter " data-progress="7.2.5.3" style="left: 86.16600790513834%;"></a> <a href="../mallocc/api.html" title="API介绍" class="chapter " data-progress="7.2.5.4" style="left: 86.36363636363636%;"></a> <a href="../mallocc/summry.html" title="总结" class="chapter " data-progress="7.2.5.5" style="left: 86.56126482213439%;"></a> <a href="../introduce/dynamicmemorymalloc.html" title="dynamicmemorymalloc" class="chapter " data-progress="7.2.6" style="left: 86.7588932806324%;"></a> <a href="../conclusion/README.html" title="其他工具" class="chapter " data-progress="7.3" style="left: 86.95652173913044%;"></a> <a href="../sqlite/sqlitelimiteh.html" title="SqliteLimite.h" class="chapter " data-progress="7.3.1" style="left: 87.15415019762845%;"></a> <a href="../sqlite/sqliteinth.html" title="SqliteInt.h" class="chapter " data-progress="7.3.2" style="left: 87.35177865612648%;"></a> <a href="../sqlite/globalc.html" title="Global.c模块源码分析" class="chapter " data-progress="7.3.3" style="left: 87.5494071146245%;"></a> <a href="../mainc/READMEG16.html" title="主函数分析" class="chapter " data-progress="7.3.4" style="left: 87.74703557312253%;"></a> <a href="../vdbeInt&vdbemem887/vdbememc887.html" title="vdbemem.c分析" class="chapter " data-progress="7.3.4.1" style="left: 87.94466403162055%;"></a> <a href="../vdbemem/vdbememsqlitevdbe.html" title="SQLite的虚拟机" class="chapter " data-progress="7.3.4.1.1" style="left: 88.14229249011858%;"></a> <a href="../vdbemem/vdbememvdbememccode.html" title="结构体"Mem"的操作函数-vdbemem.c" class="chapter " data-progress="7.3.4.1.2" style="left: 88.3399209486166%;"></a> <a href="../mainc/hanshu.html" title="函数功能" class="chapter " data-progress="7.3.4.2" style="left: 88.53754940711462%;"></a> <a href="../mainc/caozuo.html" title="操作控制" class="chapter " data-progress="7.3.4.3" style="left: 88.73517786561264%;"></a> <a href="../printf/printfsqlite.html" title="Printf.c分析" class="chapter " data-progress="7.3.5" style="left: 88.93280632411067%;"></a> <a href="../printf/datatype.html" title="数据类型定义" class="chapter " data-progress="7.3.5.1" style="left: 89.1304347826087%;"></a> <a href="../printf/sqlite3AppendSpace.html" title="sqlite3AppendSpace()函数" class="chapter " data-progress="7.3.5.2" style="left: 89.32806324110672%;"></a> <a href="../printf/sqlite3vxprintf.html" title="sqlite3VXPrintf()函数" class="chapter " data-progress="7.3.5.3" style="left: 89.52569169960475%;"></a> <a href="../printf/sqlite3straccumappend.html" title="sqlite3StrAccumAppend()函数" class="chapter " data-progress="7.3.5.4" style="left: 89.72332015810277%;"></a> <a href="../printf/sqlite3straccumfinish.html" title="*sqlite3StrAccumFinish()函数" class="chapter " data-progress="7.3.5.5" style="left: 89.9209486166008%;"></a> <a href="../printf/sqlite3straccumreset.html" title="sqlite3StrAccumReset()函数" class="chapter " data-progress="7.3.5.6" style="left: 90.11857707509881%;"></a> <a href="../printf/sqlite3straccuminit.html" title="sqlite3StrAccumInit()函数" class="chapter " data-progress="7.3.5.7" style="left: 90.31620553359684%;"></a> <a href="../printf/sqlite3vmprintf.html" title="*sqlite3VMPrintf()函数" class="chapter " data-progress="7.3.5.8" style="left: 90.51383399209486%;"></a> <a href="../printf/sqlite3mprintf.html" title="*sqlite3MPrintf()函数" class="chapter " data-progress="7.3.5.9" style="left: 90.71146245059289%;"></a> <a href="../printf/sqlite3mappendf.html" title="*sqlite3MAppendf()函数" class="chapter " data-progress="7.3.5.10" style="left: 90.9090909090909%;"></a> <a href="../printf/sqlite3_vmprintf.html" title="*sqlite3_vmprintf()函数" class="chapter " data-progress="7.3.5.11" style="left: 91.10671936758894%;"></a> <a href="../printf/sqlite3_mprintf.html" title="*sqlite3_mprintf()函数" class="chapter " data-progress="7.3.5.12" style="left: 91.30434782608695%;"></a> <a href="../printf/sqlite3_vsnprintfsqlite3_snprintf.html" title="*sqlite3_vsnprintf()函数;*sqlite3_snprintf()函数" class="chapter " data-progress="7.3.5.13" style="left: 91.50197628458498%;"></a> <a href="../printf/renderlogmsg.html" title="renderLogMsg()函数" class="chapter " data-progress="7.3.5.14" style="left: 91.699604743083%;"></a> <a href="../printf/sqlite3_log.html" title="sqlite3_log()函数" class="chapter " data-progress="7.3.5.15" style="left: 91.89723320158103%;"></a> <a href="../printf/sqlite3debugprintf.html" title="sqlite3DebugPrintf()函数" class="chapter " data-progress="7.3.5.16" style="left: 92.09486166007905%;"></a> <a href="../printf/sqlite3xprintf.html" title="sqlite3XPrintf()函数" class="chapter " data-progress="7.3.5.17" style="left: 92.29249011857708%;"></a> <a href="../date/datecG22.html" title="date.c模块源码分析" class="chapter " data-progress="7.3.6" style="left: 92.4901185770751%;"></a> <a href="../date/datestruct.html" title="主要结构体" class="chapter " data-progress="7.3.6.1" style="left: 92.68774703557312%;"></a> <a href="../date/getsystem.html" title="获取系统读数" class="chapter " data-progress="7.3.6.2" style="left: 92.88537549407114%;"></a> <a href="../date/gettimediff.html" title="读取时区差异扩展表示格式" class="chapter " data-progress="7.3.6.3" style="left: 93.08300395256917%;"></a> <a href="../date/changetime.html" title="正常时间与儒略日数之间的相互转换" class="chapter " data-progress="7.3.6.4" style="left: 93.28063241106719%;"></a> <a href="../date/julian_day_number.html" title="转换为Julian Day Number所发生的的错误个数" class="chapter " data-progress="7.3.6.5" style="left: 93.47826086956522%;"></a> <a href="../date/getcurrenttime.html" title="获取系统当前时间" class="chapter " data-progress="7.3.6.6" style="left: 93.67588932806323%;"></a> <a href="../date/grammaroptimize.html" title="时间戳的语法改良" class="chapter " data-progress="7.3.6.7" style="left: 93.87351778656127%;"></a> <a href="../date/timeshow.html" title="时间的表示" class="chapter " data-progress="7.3.6.8" style="left: 94.07114624505928%;"></a> <a href="../sqlite/utilCode.html" title="util.c分析" class="chapter " data-progress="7.3.7" style="left: 94.26877470355731%;"></a> <a href="../utf.c&vacuum/utf.html" title="utf.c分析" class="chapter " data-progress="7.3.8" style="left: 94.46640316205534%;"></a> <a href="../date/ctimec.html" title="Ctime.c模块源码分析" class="chapter " data-progress="7.3.9" style="left: 94.66403162055336%;"></a> <a href="../printfc/printfc.html" title="Printf.c" class="chapter " data-progress="7.3.10" style="left: 94.86166007905139%;"></a> <a href="../printfc/updatecprgn.html" title="功能" class="chapter " data-progress="7.3.10.1" style="left: 95.0592885375494%;"></a> <a href="../printfc/hdy.html" title="宏定义" class="chapter " data-progress="7.3.10.2" style="left: 95.25691699604744%;"></a> <a href="../printfc/jgt.html" title="结构体" class="chapter " data-progress="7.3.10.3" style="left: 95.45454545454545%;"></a> <a href="../printfc/function.html" title="函数" class="chapter " data-progress="7.3.10.4" style="left: 95.65217391304348%;"></a> <a href="../printfc/et_getdigit.html" title="et_getdigit" class="chapter " data-progress="7.3.10.4.1" style="left: 95.8498023715415%;"></a> <a href="../printfc/sqlite3appendspace.html" title="sqlite3AppendSpace" class="chapter " data-progress="7.3.10.4.2" style="left: 96.04743083003953%;"></a> <a href="../printfc/sqlite3vxprintf.html" title="sqlite3VXPrintf" class="chapter " data-progress="7.3.10.4.3" style="left: 96.24505928853755%;"></a> <a href="../printfc/qths.html" title="其他函数" class="chapter " data-progress="7.3.10.4.4" style="left: 96.44268774703558%;"></a> <a href="../date/datec1.html" title="date.c模块源码分析(1)" class="chapter " data-progress="7.3.11" style="left: 96.6403162055336%;"></a> <a href="../date/datec.html" title="date.c模块源码分析(2)" class="chapter " data-progress="7.3.12" style="left: 96.83794466403162%;"></a> <a href="../conclusion/forexample" title="forexample" class="chapter " data-progress="7.3.13" style="left: 97.03557312252964%;"></a> <a href="../sqlite/completec.html" title="complete.c模块源码分析" class="chapter " data-progress="7.4" style="left: 97.23320158102767%;"></a> <a href="../sqlite/callbackc.html" title="callback.c模块源码分析" class="chapter " data-progress="7.5" style="left: 97.43083003952569%;"></a> <a href="../sqlite/hash.html" title="Hash" class="chapter " data-progress="7.6" style="left: 97.62845849802372%;"></a> <a href="../introduce/sqliteG12.html" title="Sqlite源代码介绍" class="chapter " data-progress="7.7" style="left: 97.82608695652173%;"></a> <a href="../clp/shellclp.html" title="Shell模式下使用CLP" class="chapter new-chapter" data-progress="8" style="left: 98.02371541501977%;"></a> <a href="../clp/dosclp.html" title="命令行模式下的CLP" class="chapter " data-progress="8.1" style="left: 98.22134387351778%;"></a> <a href="../function/api.html" title="重要的API函数" class="chapter " data-progress="8.2" style="left: 98.41897233201581%;"></a> <a href="../function/user.html" title="用户自定义函数" class="chapter " data-progress="8.3" style="left: 98.61660079051383%;"></a> <a href="../result/code.html" title="结果代码" class="chapter " data-progress="8.4" style="left: 98.81422924901186%;"></a> <a href="../sqlfuncc/README.html" title="实现SQL的各种函数(func.c的源码分析)" class="chapter new-chapter" data-progress="9" style="left: 99.01185770750988%;"></a> <a href="../sqlfuncc/jisuan.html" title="算术函数" class="chapter " data-progress="9.1" style="left: 99.2094861660079%;"></a> <a href="../sqlfuncc/zifu.html" title="字符处理函数" class="chapter " data-progress="9.2" style="left: 99.40711462450592%;"></a> <a href="../sqlfuncc/tiaojian.html" title="条件判断函数" class="chapter " data-progress="9.3" style="left: 99.60474308300395%;"></a> <a href="../sqlfuncc/jihe.html" title="集合函数" class="chapter " data-progress="9.4" style="left: 99.80237154150197%;"></a> <a href="../sqlfuncc/qita.html" title="其他函数" class="chapter " data-progress="9.5" style="left: 100%;"></a> </div> </div> <div class="page-inner"> <section class="normal" id="section-gitbook_398"> <h1 id="">关系查询处理器</h1> <p>一个关系查询处理器以一个SQL语句作为输入,然后进行验证,优化成为一个程序数据流执行计划,并且在获得准入许可以后可以代表一个客户程序执行数据流程序.接着,客户程序获取元组,通常一次一个元组或一小批元组.<br><br> 在该部分内容中,我们关注查询处理器和"存储管理器访问方法的非事务处理方面".<br><br> 在本章中,我们将重点放在常见的SQL命令:数据操作语言(DML)语句包括SELECT、INSERT、UPDATE和DELETE.像CREATE TABLE和CREATE INDEX这样的数据定义语言(DDL)语句通常不被查询优化器处理的.这些语句通常是由静态DBMS逻辑通过调用存储引擎和目录管理器来实现的.</p> </section> </div> </div> </div> <a href="../vdbesort/functions.html" class="navigation navigation-prev " aria-label="Previous page: 函数定义"><i class="fa fa-angle-left"></i></a> <a href="../srcAnaly/selectExec.html" class="navigation navigation-next " aria-label="Next page: 查询解析和授权"><i class="fa fa-angle-right"></i></a> </div> </div> <script src="../gitbook/jsrepl/jsrepl.js" id="jsrepl-script"></script> <script src="../gitbook/app.js"></script> <script src="https://cdn.mathjax.org/mathjax/2.0-latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script> <script src="../gitbook/plugins/gitbook-plugin-mathjax/plugin.js"></script> <script> require(["gitbook"], function(gitbook) { var config = {}; gitbook.start(config); }); </script> </body> </html>