?? sqlite3types.pas
字號:
Unit SQLite3Types;
Interface
Const
SQLITE_OK = 0; // Successful result
SQLITE_ERROR = 1; // SQL error or missing database
SQLITE_INTERNAL = 2; // An internal logic error in SQLite
SQLITE_PERM = 3; // Access permission denied
SQLITE_ABORT = 4; // Callback routine requested an abort
SQLITE_BUSY = 5; // The database file is locked
SQLITE_LOCKED = 6; // A table in the database is locked
SQLITE_NOMEM = 7; // A malloc() failed
SQLITE_READONLY = 8; // Attempt to write a readonly database
SQLITE_INTERRUPT = 9; // Operation terminated by sqlite3_interrupt()
SQLITE_IOERR = 10; // Some kind of disk I/O error occurred
SQLITE_CORRUPT = 11; // The database disk image is malformed
SQLITE_NOTFOUND = 12; // (Internal Only) Table or record not found
SQLITE_FULL = 13; // Insertion failed because database is full
SQLITE_CANTOPEN = 14; // Unable to open the database file
SQLITE_PROTOCOL = 15; // Database lock protocol error
SQLITE_EMPTY = 16; // Database is empty
SQLITE_SCHEMA = 17; // The database schema changed
SQLITE_TOOBIG = 18; // Too much data for one row of a table
SQLITE_CONSTRAINT = 19; // Abort due to contraint violation
SQLITE_MISMATCH = 20; // Data type mismatch
SQLITE_MISUSE = 21; // Library used incorrectly
SQLITE_NOLFS = 22; // Uses OS features not supported on host
SQLITE_AUTH = 23; // Authorization denied
SQLITE_FORMAT = 24; // Auxiliary database format error
SQLITE_RANGE = 25; // 2nd parameter to sqlite3_bind out of range
SQLITE_NOTADB = 26; // File opened that is not a database file
SQLITE_ROW = 100; // sqlite3_step() has another row ready
SQLITE_DONE = 101; // sqlite3_step() has finished executing
SQLITE_INTEGER = 1;
SQLITE_FLOAT = 2;
SQLITE_TEXT = 3;
SQLITE_BLOB = 4;
SQLITE_NULL = 5;
SQLITE_CREATE_INDEX = 1; // Index Name Table Name */
SQLITE_CREATE_TABLE = 2; // Table Name NULL */
SQLITE_CREATE_TEMP_INDEX = 3; // Index Name Table Name */
SQLITE_CREATE_TEMP_TABLE = 4; // Table Name NULL */
SQLITE_CREATE_TEMP_TRIGGER = 5; // Trigger Name Table Name */
SQLITE_CREATE_TEMP_VIEW = 6; // View Name NULL */
SQLITE_CREATE_TRIGGER = 7; // Trigger Name Table Name */
SQLITE_CREATE_VIEW = 8; // View Name NULL */
SQLITE_DELETE = 9; // Table Name NULL */
SQLITE_DROP_INDEX = 10; // Index Name Table Name */
SQLITE_DROP_TABLE = 11; // Table Name NULL */
SQLITE_DROP_TEMP_INDEX = 12; // Index Name Table Name */
SQLITE_DROP_TEMP_TABLE = 13; // Table Name NULL */
SQLITE_DROP_TEMP_TRIGGER = 14; // Trigger Name Table Name */
SQLITE_DROP_TEMP_VIEW = 15; // View Name NULL */
SQLITE_DROP_TRIGGER = 16; // Trigger Name Table Name */
SQLITE_DROP_VIEW = 17; // View Name NULL */
SQLITE_INSERT = 18; // Table Name NULL */
SQLITE_PRAGMA = 19; // Pragma Name 1st arg or NULL */
SQLITE_READ = 20; // Table Name Column Name */
SQLITE_SELECT = 21; // NULL NULL */
SQLITE_TRANSACTION = 22; // NULL NULL */
SQLITE_UPDATE = 23; // Table Name Column Name */
SQLITE_ATTACH = 24; // Filename NULL */
SQLITE_DETACH = 25; // Database Name NULL */
SQLITE_DENY = 1; // Abort the SQL statement with an error */
SQLITE_IGNORE = 2; // Don't allow access, but don't generate an error */
Type
TSQLiteDB = Pointer;
PSQLiteDB = ^TSQLiteDB;
//For SQLite 3.6.11
//TSQLiteBackup = Pointer;
TSQLiteBlob = Pointer;
TSQLiteResult = ^PAnsiChar;
TSQLiteStmt = Pointer;
TPUtf8CharArray = Array[0..MaxInt Div SizeOf(PAnsiChar) - 1] Of PAnsiChar;
PPUtf8CharArray = ^TPUtf8CharArray;
TSQLite_Context = Type Pointer;
TSQLite_Destructor = Procedure(P: Pointer); cdecl;
TSQLite_Collation_Destructor = Type TSQLite_Destructor;
TSQLite_Module_Destructor = Type TSQLite_Destructor;
TSQLite_Result_Destructor = Type TSQLite_Destructor;
TSQLite_AuxData_Destructor = Type TSQLite_Destructor;
TSQLite_Exec_Callback = Function(UserData: Pointer; ColumnCount: Integer; ColumnValues, ColumnNames: PPointer): Integer; cdecl;
TSQLite_Busy_Callback = Function(Sender: TObject; ObjectName: PAnsiChar; BusyCount: Integer): Integer Of Object; cdecl;
TSQLite_Commit_Callback = Function(pArg: Pointer): Integer; cdecl;
TSQLite_Collation_Callback = Function(UserData: Pointer; l1: Integer; Const s1: Pointer; l2: Integer; Const s2: Pointer): Integer; cdecl;
TSQLite_Func_Callback = Procedure(pCtx: TSQLite_Context; nArgs: Integer; Args: PPointerArray); cdecl;
PSQLite_Func_Callback = ^TSQLite_Func_Callback;
TSQLite_Step_Callback = Procedure(pCtx: TSQLite_Context; nArgs: Integer; Args: PPointerArray); cdecl;
TSQLite_Final_Callback = Procedure(pCtx: TSQLite_Context); cdecl;
TSQLite_Collation_Needed_Callback = Procedure(UserData: Pointer; DB: TSQLiteDB; eTextRep: Integer; Name: PAnsiChar); cdecl;
TSQLite_Collation_Needed16_Callback = Procedure(UserData: Pointer; DB: TSQLiteDB; eTextRep: Integer; Name: PWideChar); cdecl;
TSQLite_Profile_Callback = Procedure(UserData: Pointer; Const SQL: PAnsiChar; elapseTime: Int64); cdecl;
TSQLite_Progress_Callback = Function(UserData: Pointer): Integer; cdecl;
TSQLite_Rollback_Callback = Procedure(pArg: Pointer); cdecl;
TSQLite_Authorizer_Callback = Function(UserData: Pointer; Arg2: Integer; Arg3: PAnsiChar; Arg4: PAnsiChar; Arg5: PAnsiChar; Arg6: PAnsiChar): Integer; cdecl;
TSQLite_Trace_Callback = Procedure(UserData: Pointer; Const SQL: PAnsiChar); cdecl;
TSQLite_Update_Callback = Procedure(pArg: Pointer; Operation: Integer; DB: TSQLiteDB; TableName: PAnsiChar; RowID: Int64); cdecl;
PSQLite3_Module = ^TSQLite3_Module;
PPSQLite3_Vtab = ^PSQLite3_Vtab;
PSQLite3_Vtab = ^TSQLite3_Vtab;
TSQLite3_Vtab = Packed Record
pModule: PSQLite3_Module;
nRef: Integer;
zErrMsg: PAnsiChar;
End;
TSQLite3_Index_Constraint = Packed Record
iColumn: Integer;
op: Byte;
usable: Byte;
Dummy: Word;
iTermOffset: Integer;
End;
PSQLite3_Index_Constraint_Array = ^TSQLite3_Index_Constraint_Array;
TSQLite3_Index_Constraint_Array = Array[0..MaxInt Div SizeOf(TSQLite3_Index_Constraint) - 1] Of TSQLite3_Index_Constraint;
TSQLite3_Index_Orderby = Packed Record
iColumn: Integer;
Desc: Byte;
End;
PSQLite3_Index_Orderby_Array = ^TSQLite3_Index_Orderby_Array;
TSQLite3_Index_Orderby_Array = Array[0..MaxInt Div SizeOf(TSQLite3_Index_Orderby) - 1] Of TSQLite3_Index_Orderby;
TSQLite3_Index_Constraint_Usage = Packed Record
argvIndex: Integer;
omit: Byte;
End;
PSQLite3_Index_Constraint_Usage_Array = ^TSQLite3_Index_Constraint_Usage_Array;
TSQLite3_Index_Constraint_Usage_Array = Array[0..MaxInt Div SizeOf(TSQLite3_Index_Constraint_Usage) - 1] Of TSQLite3_Index_Constraint_Usage;
PSQLite3_index_info = ^TSQLite3_Index_Info;
TSQLite3_Index_Info = Packed Record
nConstraint: Integer;
aConstraint: PSQLite3_Index_Constraint_Array;
nOrderBy: Integer;
aOrderBy: PSQLite3_Index_Orderby_Array;
aConstraintUsage: PSQLite3_Index_Constraint_Usage_Array;
idxNum: Integer;
idxStr: PAnsiChar;
needToFreeIdxStr: Integer;
orderByConsumed: Integer;
estimatedCost: Double;
End;
PPSQLite3_Vtab_Cursor = ^PSQLite3_Vtab_Cursor;
PSQLite3_Vtab_Cursor = ^TSQLite3_Vtab_Cursor;
TSQLite3_Vtab_Cursor = Packed Record
pVTab: PSQLite3_Vtab;
End;
TSQLite3_Module = Packed Record
iVersion: Integer;
xCreate: Function(DB: TSQLiteDB; paux: Pointer; argc: Integer; Const argv: PPUtf8CharArray; pVTab: PPSQLite3_Vtab; pzErr: PPAnsiChar): Integer; cdecl;
xConnect: Function(DB: TSQLiteDB; paux: Pointer; argc: Integer; Const argv: PPUtf8CharArray; pVTab: PPSQLite3_Vtab; pzErr: PPAnsiChar): Integer; cdecl;
xBestIndex: Function(pVTab: PSQLite3_Vtab; Info: PSQLite3_index_info): Integer; cdecl;
xDisconnect: Function(pVTab: PSQLite3_Vtab): Integer; cdecl;
xDestroy: Function(pVTab: PSQLite3_Vtab): Integer; cdecl;
xOpen: Function(pVTab: PSQLite3_Vtab; ppCursor: PPSQLite3_Vtab_Cursor): Integer; cdecl;
xClose: Function(pCursor: PSQLite3_Vtab_Cursor): Integer; cdecl;
xFilter: Function(pCursor: PSQLite3_Vtab_Cursor; idxNum: Integer; Const idxStr: PAnsiChar; argc: Integer; argv: PPointerArray): Integer; cdecl;
xNext: Function(pCursor: PSQLite3_Vtab_Cursor): Integer; cdecl;
xEof: Function(pCursor: PSQLite3_Vtab_Cursor): Integer; cdecl;
xColumn: Function(pCursor: PSQLite3_Vtab_Cursor; pCtx: TSQLite_Context; i: Integer): Integer; cdecl;
xRowID: Function(pCursor: PSQLite3_Vtab_Cursor; pRowID: PInt64): Integer; cdecl;
xUpdate: Function(pVTab: PSQLite3_Vtab; argc: Integer; argv: PPointerArray; pRowID: PInt64): Integer; cdecl;
xBegin: Function(pVTab: PSQLite3_Vtab): Integer; cdecl;
xSync: Function(pVTab: PSQLite3_Vtab): Integer; cdecl;
xCommit: Function(pVTab: PSQLite3_Vtab): Integer; cdecl;
xRollback: Function(pVTab: PSQLite3_Vtab): Integer; cdecl;
xFindFunction: Function(pVTab: PSQLite3_Vtab; nArg: Integer; Const zName: PAnsiChar; pxFunc: PSQLite_Func_Callback; ppArg: PPointerArray): Integer; cdecl;
xRename: Function(pVTab: PSQLite3_Vtab; Const zNew: PAnsiChar): Integer; cdecl;
End;
PSQLite3_Mutex_Ptr = ^TSQLite3_Mutex;
TSQLite3_Mutex = Packed Record
End;
PSQLite3_File_Ptr = ^TSQLite3_File;
PSQLite3_IO_Methods_Ptr = ^TSQLite3_IO_Methods;
TSQLite3_IO_Methods = Packed Record
iVersion: Integer;
xClose: Function(ID: PSQLite3_File_Ptr): Integer; cdecl;
xRead: Function(ID: PSQLite3_File_Ptr; pBuf: Pointer; iAmt: Integer; iOfst: Int64): Integer; cdecl;
xWrite: Function(ID: PSQLite3_File_Ptr; Const pBuf: Pointer; iAmt: Integer; iOfst: Int64): Integer; cdecl;
xTruncate: Function(ID: PSQLite3_File_Ptr; Size: Int64): Integer; cdecl;
xSync: Function(ID: PSQLite3_File_Ptr; Flags: Integer): Integer; cdecl;
xFileSize: Function(ID: PSQLite3_File_Ptr; pSize: PInt64): Integer; cdecl;
xLock: Function(ID: PSQLite3_File_Ptr; lockType: Integer): Integer; cdecl;
xUnlock: Function(ID: PSQLite3_File_Ptr; lockType: Integer): Integer; cdecl;
xCheckReservedLock: Function(ID: PSQLite3_File_Ptr; pResOut: PInteger): Integer; cdecl;
xFileControl: Function(ID: PSQLite3_File_Ptr; op: Integer; pArg: Pointer): Integer; cdecl;
xLockState: Function(ID: PSQLite3_File_Ptr): Integer; cdecl;
xSectorSize: Function(ID: PSQLite3_File_Ptr): Integer; cdecl;
xDeviceCharacteristics: Function(ID: PSQLite3_File_Ptr): Integer; cdecl;
End;
TSQLite3_File = Record
pMethods: PSQLite3_IO_Methods_Ptr;
End;
PSQLite3_Vfs_Ptr = ^TSQLite3_Vfs;
TSQLite3_Vfs = Packed Record
iVersion: Integer;
szOsFile: Integer;
mxPathname: Integer;
pNext: PSQLite3_Vfs_Ptr;
zName: PAnsiChar;
pAppData: Pointer;
xOpen: Function(pVfs: PSQLite3_Vfs_Ptr; Const zName: PAnsiChar; pFile: PSQLite3_File_Ptr; Flags: Integer; pOutFlags: PInteger): Integer; cdecl;
xDelete: Function(pVfs: PSQLite3_Vfs_Ptr; Const zName: PAnsiChar; syncDir: Integer): Integer; cdecl;
xAccess: Function(pVfs: PSQLite3_Vfs_Ptr; Const zName: PAnsiChar; Flags: Integer; pResOut: PInteger): Integer; cdecl;
xFullPathname: Function(pVfs: PSQLite3_Vfs_Ptr; Const zName: PAnsiChar; nOut: Integer; zOut: PAnsiChar): Integer; cdecl;
xDlOpen: Function(pVfs: PSQLite3_Vfs_Ptr; Const zFilename: PAnsiChar): Pointer; cdecl;
xDlError: Procedure(pVfs: PSQLite3_Vfs_Ptr; nByte: Integer; zErrMsg: PAnsiChar); cdecl;
xDlSym: Function(pVfs: PSQLite3_Vfs_Ptr; PHandle: Pointer; Const zSymbol: PAnsiChar): Pointer; cdecl;
xDlClose: Procedure(pVfs: PSQLite3_Vfs_Ptr; PHandle: Pointer); cdecl;
xRandomness: Function(pVfs: PSQLite3_Vfs_Ptr; nByte: Integer; zOut: PAnsiChar): Integer; cdecl;
xSleep: Function(pVfs: PSQLite3_Vfs_Ptr; microseconds: Integer): Integer; cdecl;
xCurrentTime: Function(pVfs: PSQLite3_Vfs_Ptr; pTimeOut: PDouble): Integer; cdecl;
End;
Implementation
End.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -