亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? sqliteint.h

?? Trolltech公司發(fā)布的基于C++圖形開發(fā)環(huán)境
?? H
?? 第 1 頁 / 共 4 頁
字號(hào):
/*** 2001 September 15**** The author disclaims copyright to this source code.  In place of** a legal notice, here is a blessing:****    May you do good and not evil.**    May you find forgiveness for yourself and forgive others.**    May you share freely, never taking more than you give.***************************************************************************** Internal interface definitions for SQLite.**** @(#) $Id: qt/sqliteInt.h   3.3.4   edited Mar 30 2004 $*/#include "config.h"#include "sqlite.h"#include "hash.h"#include "parse.h"#include "btree.h"#include <stdio.h>#include <stdlib.h>#include <string.h>#include <assert.h>/*** The maximum number of in-memory pages to use for the main database** table and for temporary tables.*/#define MAX_PAGES   2000#define TEMP_PAGES   500/*** If the following macro is set to 1, then NULL values are considered** distinct for the SELECT DISTINCT statement and for UNION or EXCEPT** compound queries.  No other SQL database engine (among those tested) ** works this way except for OCELOT.  But the SQL92 spec implies that** this is how things should work.**** If the following macro is set to 0, then NULLs are indistinct for** SELECT DISTINCT and for UNION.*/#define NULL_ALWAYS_DISTINCT 0/*** If the following macro is set to 1, then NULL values are considered** distinct when determining whether or not two entries are the same** in a UNIQUE index.  This is the way PostgreSQL, Oracle, DB2, MySQL,** OCELOT, and Firebird all work.  The SQL92 spec explicitly says this** is the way things are suppose to work.**** If the following macro is set to 0, the NULLs are indistinct for** a UNIQUE index.  In this mode, you can only have a single NULL entry** for a column declared UNIQUE.  This is the way Informix and SQL Server** work.*/#define NULL_DISTINCT_FOR_UNIQUE 1/*** The maximum number of attached databases.  This must be at least 2** in order to support the main database file (0) and the file used to** hold temporary tables (1).  And it must be less than 256 because** an unsigned character is used to stored the database index.*/#define MAX_ATTACHED 10/*** The next macro is used to determine where TEMP tables and indices** are stored.  Possible values:****   0    Always use a temporary files**   1    Use a file unless overridden by "PRAGMA temp_store"**   2    Use memory unless overridden by "PRAGMA temp_store"**   3    Always use memory*/#ifndef TEMP_STORE# define TEMP_STORE 1#endif/*** When building SQLite for embedded systems where memory is scarce,** you can define one or more of the following macros to omit extra** features of the library and thus keep the size of the library to** a minimum.*//* #define SQLITE_OMIT_AUTHORIZATION  1 *//* #define SQLITE_OMIT_INMEMORYDB     1 *//* #define SQLITE_OMIT_VACUUM         1 *//* #define SQLITE_OMIT_DATETIME_FUNCS 1 *//* #define SQLITE_OMIT_PROGRESS_CALLBACK 1 *//*** Integers of known sizes.  These typedefs might change for architectures** where the sizes very.  Preprocessor macros are available so that the** types can be conveniently redefined at compile-type.  Like this:****         cc '-DUINTPTR_TYPE=long long int' ...*/#ifndef UINT32_TYPE# define UINT32_TYPE unsigned int#endif#ifndef UINT16_TYPE# define UINT16_TYPE unsigned short int#endif#ifndef UINT8_TYPE# define UINT8_TYPE unsigned char#endif#ifndef INT8_TYPE# define INT8_TYPE signed char#endif#ifndef INTPTR_TYPE# if SQLITE_PTR_SZ==4#   define INTPTR_TYPE int# else#   define INTPTR_TYPE long long# endif#endiftypedef UINT32_TYPE u32;           /* 4-byte unsigned integer */typedef UINT16_TYPE u16;           /* 2-byte unsigned integer */typedef UINT8_TYPE u8;             /* 1-byte unsigned integer */typedef UINT8_TYPE i8;             /* 1-byte signed integer */typedef INTPTR_TYPE ptr;           /* Big enough to hold a pointer */typedef unsigned INTPTR_TYPE uptr; /* Big enough to hold a pointer *//*** Defer sourcing vdbe.h until after the "u8" typedef is defined.*/#include "vdbe.h"/*** Most C compilers these days recognize "long double", don't they?** Just in case we encounter one that does not, we will create a macro** for long double so that it can be easily changed to just "double".*/#ifndef LONGDOUBLE_TYPE# define LONGDOUBLE_TYPE long double#endif/*** This macro casts a pointer to an integer.  Useful for doing** pointer arithmetic.*/#define Addr(X)  ((uptr)X)/*** The maximum number of bytes of data that can be put into a single** row of a single table.  The upper bound on this limit is 16777215** bytes (or 16MB-1).  We have arbitrarily set the limit to just 1MB** here because the overflow page chain is inefficient for really big** records and we want to discourage people from thinking that ** multi-megabyte records are OK.  If your needs are different, you can** change this define and recompile to increase or decrease the record** size.**** The 16777198 is computed as follows:  238 bytes of payload on the** original pages plus 16448 overflow pages each holding 1020 bytes of** data.*/#define MAX_BYTES_PER_ROW  1048576/* #define MAX_BYTES_PER_ROW 16777198 *//*** If memory allocation problems are found, recompile with****      -DMEMORY_DEBUG=1**** to enable some sanity checking on malloc() and free().  To** check for memory leaks, recompile with****      -DMEMORY_DEBUG=2**** and a line of text will be written to standard error for** each malloc() and free().  This output can be analyzed** by an AWK script to determine if there are any leaks.*/#ifdef MEMORY_DEBUG# define sqliteMalloc(X)    sqliteMalloc_(X,1,__FILE__,__LINE__)# define sqliteMallocRaw(X) sqliteMalloc_(X,0,__FILE__,__LINE__)# define sqliteFree(X)      sqliteFree_(X,__FILE__,__LINE__)# define sqliteRealloc(X,Y) sqliteRealloc_(X,Y,__FILE__,__LINE__)# define sqliteStrDup(X)    sqliteStrDup_(X,__FILE__,__LINE__)# define sqliteStrNDup(X,Y) sqliteStrNDup_(X,Y,__FILE__,__LINE__)  void sqliteStrRealloc(char**);#else# define sqliteRealloc_(X,Y) sqliteRealloc(X,Y)# define sqliteStrRealloc(X)#endif/*** This variable gets set if malloc() ever fails.  After it gets set,** the SQLite library shuts down permanently.*/extern int sqlite_malloc_failed;/*** The following global variables are used for testing and debugging** only.  They only work if MEMORY_DEBUG is defined.*/#ifdef MEMORY_DEBUGextern int sqlite_nMalloc;       /* Number of sqliteMalloc() calls */extern int sqlite_nFree;         /* Number of sqliteFree() calls */extern int sqlite_iMallocFail;   /* Fail sqliteMalloc() after this many calls */#endif/*** Name of the master database table.  The master database table** is a special table that holds the names and attributes of all** user tables and indices.*/#define MASTER_NAME       "sqlite_master"#define TEMP_MASTER_NAME  "sqlite_temp_master"/*** The name of the schema table.*/#define SCHEMA_TABLE(x)  (x?TEMP_MASTER_NAME:MASTER_NAME)/*** A convenience macro that returns the number of elements in** an array.*/#define ArraySize(X)    (sizeof(X)/sizeof(X[0]))/*** Forward references to structures*/typedef struct Column Column;typedef struct Table Table;typedef struct Index Index;typedef struct Instruction Instruction;typedef struct Expr Expr;typedef struct ExprList ExprList;typedef struct Parse Parse;typedef struct Token Token;typedef struct IdList IdList;typedef struct SrcList SrcList;typedef struct WhereInfo WhereInfo;typedef struct WhereLevel WhereLevel;typedef struct Select Select;typedef struct AggExpr AggExpr;typedef struct FuncDef FuncDef;typedef struct Trigger Trigger;typedef struct TriggerStep TriggerStep;typedef struct TriggerStack TriggerStack;typedef struct FKey FKey;typedef struct Db Db;typedef struct AuthContext AuthContext;/*** Each database file to be accessed by the system is an instance** of the following structure.  There are normally two of these structures** in the sqlite.aDb[] array.  aDb[0] is the main database file and** aDb[1] is the database file used to hold temporary tables.  Additional** databases may be attached.*/struct Db {  char *zName;         /* Name of this database */  Btree *pBt;          /* The B*Tree structure for this database file */  int schema_cookie;   /* Database schema version number for this file */  Hash tblHash;        /* All tables indexed by name */  Hash idxHash;        /* All (named) indices indexed by name */  Hash trigHash;       /* All triggers indexed by name */  Hash aFKey;          /* Foreign keys indexed by to-table */  u8 inTrans;          /* 0: not writable.  1: Transaction.  2: Checkpoint */  u16 flags;           /* Flags associated with this database */  void *pAux;          /* Auxiliary data.  Usually NULL */  void (*xFreeAux)(void*);  /* Routine to free pAux */};/*** These macros can be used to test, set, or clear bits in the ** Db.flags field.*/#define DbHasProperty(D,I,P)     (((D)->aDb[I].flags&(P))==(P))#define DbHasAnyProperty(D,I,P)  (((D)->aDb[I].flags&(P))!=0)#define DbSetProperty(D,I,P)     (D)->aDb[I].flags|=(P)#define DbClearProperty(D,I,P)   (D)->aDb[I].flags&=~(P)/*** Allowed values for the DB.flags field.**** The DB_Locked flag is set when the first OP_Transaction or OP_Checkpoint** opcode is emitted for a database.  This prevents multiple occurances** of those opcodes for the same database in the same program.  Similarly,** the DB_Cookie flag is set when the OP_VerifyCookie opcode is emitted,** and prevents duplicate OP_VerifyCookies from taking up space and slowing** down execution.**** The DB_SchemaLoaded flag is set after the database schema has been** read into internal hash tables.**** DB_UnresetViews means that one or more views have column names that** have been filled out.  If the schema changes, these column names might** changes and so the view will need to be reset.*/#define DB_Locked          0x0001  /* OP_Transaction opcode has been emitted */#define DB_Cookie          0x0002  /* OP_VerifyCookie opcode has been emiited */#define DB_SchemaLoaded    0x0004  /* The schema has been loaded */#define DB_UnresetViews    0x0008  /* Some views have defined column names *//*** Each database is an instance of the following structure.**** The sqlite.file_format is initialized by the database file** and helps determines how the data in the database file is** represented.  This field allows newer versions of the library** to read and write older databases.  The various file formats** are as follows:****     file_format==1    Version 2.1.0.**     file_format==2    Version 2.2.0. Add support for INTEGER PRIMARY KEY.**     file_format==3    Version 2.6.0. Fix empty-string index bug.**     file_format==4    Version 2.7.0. Add support for separate numeric and**                       text datatypes.**** The sqlite.temp_store determines where temporary database files

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91麻豆.com| 日韩一级视频免费观看在线| 偷拍自拍另类欧美| 国产欧美精品在线观看| 欧美四级电影网| 国产盗摄视频一区二区三区| 天堂一区二区在线| 亚洲欧美色图小说| 国产日韩欧美高清在线| 欧美成人性福生活免费看| 欧美一a一片一级一片| 99久久精品免费看国产| 国产在线播精品第三| 轻轻草成人在线| 亚洲成人久久影院| 一区二区三区四区中文字幕| 国产欧美综合在线| 久久综合久久综合亚洲| 日韩视频在线你懂得| 欧美性色黄大片手机版| 91免费国产视频网站| 国产不卡视频一区| 国产成人日日夜夜| 国产精品影视网| 激情五月婷婷综合网| 视频一区视频二区中文| 亚洲成人av中文| 亚洲一区二区视频| 亚洲在线免费播放| 亚洲国产一区视频| 亚洲一区二区欧美| 亚洲午夜视频在线| 亚洲自拍另类综合| 亚洲综合免费观看高清完整版| 亚洲欧美综合色| **网站欧美大片在线观看| 欧美日韩视频在线一区二区| 欧美日韩黄色影视| 91精品国产福利在线观看| 91精品国产91久久综合桃花| 制服.丝袜.亚洲.另类.中文| 欧美日韩国产经典色站一区二区三区| 色乱码一区二区三区88| 欧美三级三级三级爽爽爽| 欧美日韩黄色影视| 日韩精品一区二区三区视频 | 亚洲精品一区二区三区四区高清| 4438x成人网最大色成网站| 7777女厕盗摄久久久| 日韩一级片网站| 久久久久久久久99精品| 国产精品视频线看| 伊人夜夜躁av伊人久久| 日韩精品视频网| 国产乱子伦视频一区二区三区| 国产成人在线网站| 色偷偷88欧美精品久久久| 欧美日韩国产不卡| 久久久久高清精品| 亚洲视频每日更新| 婷婷成人激情在线网| 国产一区二区日韩精品| av动漫一区二区| 在线中文字幕一区| 日韩一卡二卡三卡国产欧美| 国产日本欧美一区二区| 亚洲色图清纯唯美| 蜜臀av一区二区在线观看| 国产一区二区三区黄视频 | 日韩综合在线视频| 激情综合色播激情啊| 成人黄色777网| 欧美美女一区二区| 国产婷婷一区二区| 午夜国产精品一区| 国产精品夜夜嗨| 在线看国产日韩| 精品国产a毛片| 亚洲一区欧美一区| 国产一区二区三区不卡在线观看 | 欧美日韩成人综合天天影院| 精品美女被调教视频大全网站| 亚洲欧洲日本在线| 日韩不卡手机在线v区| 成人免费毛片aaaaa**| 欧美日韩你懂得| 国产精品久久久久久久第一福利| 亚洲123区在线观看| 国产69精品久久777的优势| 欧美日韩国产在线观看| 国产精品久99| 国内精品在线播放| 欧美日韩视频一区二区| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 久久精品一区二区三区不卡牛牛| 亚洲日本va午夜在线影院| 免费日本视频一区| 欧美在线看片a免费观看| 国产日韩精品一区二区浪潮av| 亚洲高清免费一级二级三级| 波波电影院一区二区三区| 日韩精品一区二区三区视频在线观看| 亚洲精品免费在线| 成人一区在线看| 亚洲精品一区二区在线观看| 婷婷一区二区三区| 在线观看日韩av先锋影音电影院| 久久精品人人做人人综合| 男女男精品视频| 欧美日韩亚洲另类| 一二三四社区欧美黄| 99久精品国产| 国产欧美一区二区在线观看| 免费精品视频在线| 欧美一区二区不卡视频| 亚洲va国产天堂va久久en| 一本色道久久综合亚洲91| 国产精品福利电影一区二区三区四区| 国产精品一区二区三区乱码| 精品国产自在久精品国产| 亚洲h精品动漫在线观看| 欧美手机在线视频| 亚洲第一成年网| 欧美在线免费观看亚洲| 亚洲一区二区三区在线看| 欧日韩精品视频| 一级精品视频在线观看宜春院| 99vv1com这只有精品| 成人欧美一区二区三区小说| 丁香六月久久综合狠狠色| 国产欧美视频在线观看| 国产一区二区三区久久久| 久久久蜜桃精品| 国产成人精品免费看| 国产精品高潮呻吟| 91丨porny丨国产| 一区二区三区在线免费视频| 日本乱码高清不卡字幕| 亚洲综合一区二区三区| 欧美猛男超大videosgay| 日本vs亚洲vs韩国一区三区二区| 日韩一区二区在线观看| 精品一区二区免费视频| 久久久久9999亚洲精品| 北岛玲一区二区三区四区| 美女脱光内衣内裤视频久久网站 | 欧美日韩国产成人在线91| 五月天欧美精品| 91精品国产综合久久久久久久久久 | 色av成人天堂桃色av| 亚洲激情图片qvod| 欧美丰满高潮xxxx喷水动漫| 蜜臀99久久精品久久久久久软件| 欧美mv和日韩mv国产网站| 国产成人精品一区二区三区网站观看 | 91久久精品一区二区三区| 亚洲成人av一区| 亚洲精品一区二区精华| 粉嫩嫩av羞羞动漫久久久| 亚洲欧美aⅴ...| 欧美在线视频不卡| 久久成人麻豆午夜电影| 欧美国产欧美综合| 在线日韩国产精品| 日本女人一区二区三区| 国产日韩欧美精品电影三级在线| 色综合色综合色综合色综合色综合 | 国产在线一区观看| 国产精品成人免费在线| 欧美麻豆精品久久久久久| 国产成人精品一区二区三区网站观看| 亚洲色图一区二区三区| 91精品国产综合久久精品图片| 国产麻豆精品视频| 一区二区三区四区在线免费观看| 欧美一级免费观看| 国产精品1区2区| 亚洲国产精品麻豆| 欧美经典一区二区三区| 色久综合一二码| 国产永久精品大片wwwapp| 亚洲精品成人在线| 久久婷婷色综合| 欧美日韩一二三区| 成人午夜又粗又硬又大| 日韩电影在线一区二区| 国产精品免费视频观看| 欧美一区二区三区的| 91老司机福利 在线| 国产精品一区二区免费不卡 | 日韩一级二级三级精品视频| 成人av资源网站| 免费高清在线视频一区·| 亚洲精品免费视频| 午夜精品久久久久久久久久| 欧美国产日本视频| 日韩女优av电影| 欧美综合天天夜夜久久| 成人91在线观看| 国产在线一区观看|