disqlite3api.hpp

来自「DELPHI 访问SQLITE3 数据库的VCL控件」· HPP 代码 · 共 585 行 · 第 1/2 页

HPP
585
字号
// Borland C++ Builder
// Copyright (c) 1995, 1998 by Borland International
// All rights reserved

// (DO NOT EDIT: machine generated header) 'DISQLite3Api.pas' rev: 4.00

#ifndef DISQLite3ApiHPP
#define DISQLite3ApiHPP
#include <SysUtils.hpp>
#include <SysInit.hpp>
#include <System.hpp>

//-- user supplied -----------------------------------------------------------

namespace Disqlite3api
{
//-- type declarations -------------------------------------------------------
class DELPHICLASS ESQLite3;
class PASCALIMPLEMENTATION ESQLite3 : public Sysutils::Exception 
{
	typedef Sysutils::Exception inherited;
	
private:
	int FErrorCode;
	AnsiString FErrorMessage;
	
public:
	__fastcall ESQLite3(const int AErrorCode, const AnsiString AErrorMessage);
	__fastcall ESQLite3(const int AErrorCode);
	__fastcall ESQLite3(const AnsiString AErrorMessage);
	__property int ErrorCode = {read=FErrorCode, nodefault};
	__property AnsiString ErrorMessage = {read=FErrorMessage};
public:
	/* Exception.CreateFmt */ __fastcall ESQLite3(const AnsiString Msg, const System::TVarRec * Args, const 
		int Args_Size) : Sysutils::Exception(Msg, Args, Args_Size) { }
	/* Exception.CreateRes */ __fastcall ESQLite3(int Ident, Extended Dummy) : Sysutils::Exception(Ident
		, Dummy) { }
	/* Exception.CreateResFmt */ __fastcall ESQLite3(int Ident, const System::TVarRec * Args, const int 
		Args_Size) : Sysutils::Exception(Ident, Args, Args_Size) { }
	/* Exception.CreateHelp */ __fastcall ESQLite3(const AnsiString Msg, int AHelpContext) : Sysutils::Exception(
		Msg, AHelpContext) { }
	/* Exception.CreateFmtHelp */ __fastcall ESQLite3(const AnsiString Msg, const System::TVarRec * Args
		, const int Args_Size, int AHelpContext) : Sysutils::Exception(Msg, Args, Args_Size, AHelpContext)
		 { }
	/* Exception.CreateResHelp */ __fastcall ESQLite3(int Ident, int AHelpContext) : Sysutils::Exception(
		Ident, AHelpContext) { }
	/* Exception.CreateResFmtHelp */ __fastcall ESQLite3(int Ident, const System::TVarRec * Args, const 
		int Args_Size, int AHelpContext) : Sysutils::Exception(Ident, Args, Args_Size, AHelpContext) { }
	
public:
	/* TObject.Destroy */ __fastcall virtual ~ESQLite3(void) { }
	
};

typedef int *PInteger;

typedef char * *PPAnsiChar;

typedef void * *PPointer;

typedef wchar_t * *PPWideChar;

typedef void * *TPointerArray[536870911];

typedef TPointerArray *PPointerArray;

typedef char *TPAnsiCharArray[536870911];

typedef TPAnsiCharArray *PPAnsiCharArray;

typedef TDIJulianDate TDIJulianDate;

typedef void *TDISQLite3DatabaseHandle;

typedef TDISQLite3DatabaseHandle *PDISQLite3DatabaseHandle;

typedef void *TDISQLite3StatementHandle;

typedef TDISQLite3StatementHandle *PDISQLite3StatementHandle;

typedef int __fastcall (*TSQLite3_Callback)(void * UserData, int ColumnCount, PPAnsiCharArray ColumnValues
	, PPAnsiCharArray ColumnNames);

typedef int __fastcall (*TSQLite3_Busy_Callback)(void * p, int i);

typedef int __fastcall (*TSQLite_Authorizer_Callback)(void * UserData, int Arg2, char * Arg3, char * 
	Arg4, char * Arg5, char * Arg6);

typedef void __fastcall (*TSQLite_Trace_Callback)(void * UserData, const char * SQL);

typedef void __fastcall (*TSQLite_Profile_Callback)(void * UserData, const char * SQL, __int64 elapseTime
	);

typedef int __fastcall (*TSQLite3_Progress_Callback)(void * UserData);

typedef int __fastcall (*TSQLite_Commit_Callback)(void * UserData);

typedef void __fastcall (*TSQLite_Destructor)(void * p);

typedef void __fastcall (*TSQLite_Bind_Destructor)(void * p);

typedef void __fastcall (*TSQLite_Result_Destructor)(void * p);

typedef void __fastcall (*TSQLite_Func_Callback)(void * Context, int nArgs, PPointerArray Args);

typedef TSQLite_Func_Callback *PSQLite_Func_Callback;

typedef void __fastcall (*TSQLite_Step_Callback)(void * Context, int nArgs, PPointerArray Args);

typedef void __fastcall (*TSQLite_Final_Callback)(void * Context);

typedef void __fastcall (*TSQLite_AuxData_Destructor)(void * p);

typedef int __fastcall (*TSQLite_Collation_Callback)(void * UserData, int l1, const void * s1, int l2
	, const void * s2);

typedef void __fastcall (*TSQLite_Collation_Needed_Callback)(void * UserData, TDISQLite3DatabaseHandle 
	DB, int eTextRep, char * Name);

typedef void __fastcall (*TSQLite_Collation_Needed16_Callback)(void * UserData, TDISQLite3DatabaseHandle 
	DB, int eTextRep, wchar_t * Name);

typedef void __fastcall (*TSQLite3_Update_Callback)(void * UserData, int Operation, TDISQLite3DatabaseHandle 
	DB, char * TableName, __int64 RowID);

typedef void __fastcall (*TSQLite3_Rollback_Callback)(void * UserData);

struct TSQLite3_vtab;
typedef TSQLite3_vtab *PSQLite3_vtab;

typedef PSQLite3_vtab *PPSQLite3_vtab;

struct TSQLite3_index_info;
typedef TSQLite3_index_info *psqlite3_index_info;

struct Tsqlite3_vtab_cursor
{
	TSQLite3_vtab *pvtab;
} ;

typedef Tsqlite3_vtab_cursor *Psqlite3_vtab_cursor;

typedef Psqlite3_vtab_cursor *PPsqlite3_vtab_cursor;

struct TSQLite3_Module
{
	int iVersion;
	int __fastcall (*xcreate)(TDISQLite3DatabaseHandle DB, void * paux, int argc, const PPAnsiCharArray 
		argv, PPSQLite3_vtab pvtab, PPAnsiChar pzErr);
	int __fastcall (*xConnect)(TDISQLite3DatabaseHandle DB, void * paux, int argc, const PPAnsiCharArray 
		argv, PPSQLite3_vtab pvtab, PPAnsiChar pzErr);
	int __fastcall (*xBestIndex)(PSQLite3_vtab pvtab, psqlite3_index_info Info);
	int __fastcall (*xDisconnect)(PSQLite3_vtab pvtab);
	int __fastcall (*xDestroy)(PSQLite3_vtab pvtab);
	int __fastcall (*xOpen)(PSQLite3_vtab pvtab, PPsqlite3_vtab_cursor ppCursor);
	int __fastcall (*xClose)(Psqlite3_vtab_cursor pCursor);
	int __fastcall (*xFilter)(Psqlite3_vtab_cursor pCursor, int idxNum, char * idxStr, int argc, PPointerArray 
		argv);
	int __fastcall (*xNext)(Psqlite3_vtab_cursor pCursor);
	int __fastcall (*xEof)(Psqlite3_vtab_cursor pCursor);
	int __fastcall (*xColumn)(Psqlite3_vtab_cursor pCursor, void * Context, int i);
	int __fastcall (*xRowID)(Psqlite3_vtab_cursor pCursor, System::PInt64 pRowID);
	int __fastcall (*xUpdate)(PSQLite3_vtab pvtab, int argc, PPointerArray argv, System::PInt64 pRowID)
		;
	int __fastcall (*xBegin)(PSQLite3_vtab pvtab);
	int __fastcall (*xSync)(PSQLite3_vtab pvtab);
	int __fastcall (*xCommit)(PSQLite3_vtab pvtab);
	int __fastcall (*xRollback)(PSQLite3_vtab pvtab);
	int __fastcall (*xFindFunction)(PSQLite3_vtab pvtab, int nArg, char * zName, PSQLite_Func_Callback 
		pxFunc, PPointerArray ppArg);
} ;

typedef TSQLite3_Module *psqlite3_module;

struct TSQLite3_vtab
{
	TSQLite3_Module *pModule;
	int nRef;
	char *zErrMsg;
} ;

struct Tsqlite3_index_constraint
{
	int iColumn;
	Byte op;
	Byte usable;
	int iTermOffset;
} ;

typedef Tsqlite3_index_constraint Tsqlite3_index_constraint_array[178956970];

typedef Tsqlite3_index_constraint_array *Psqlite3_index_constraint_array;

struct Tsqlite3_index_orderby
{
	int iColumn;
	Byte Desc;
} ;

typedef Tsqlite3_index_orderby Tsqlite3_index_orderby_array[268435455];

typedef Tsqlite3_index_orderby_array *Psqlite3_index_orderby_array;

struct Tsqlite3_index_constraint_usage
{
	int argvIndex;
	Byte omit;
} ;

typedef Tsqlite3_index_constraint_usage Tsqlite3_index_constraint_usage_array[268435455];

typedef Tsqlite3_index_constraint_usage_array *Psqlite3_index_constraint_usage_array;

#pragma pack(push, 1)
struct TSQLite3_index_info
{
	int nConstraint;
	Tsqlite3_index_constraint_array *aconstraint;
	int nOrderBy;
	Tsqlite3_index_orderby_array *aOrderBy;
	Tsqlite3_index_constraint_usage_array *aConstraintUsage;
	int idxNum;
	char *idxStr;
	int needToFreeIdxStr;
	int orderByConsumed;
	double estimatedCost;
} ;
#pragma pack(pop)

enum TDISQLite3Affinity { afInteger, afText, afNone, afReal, afNumeric };

enum TDISQLite3DatabaseType { dtMain, dtTemp, dtAttached };

//-- var, const, procedure ---------------------------------------------------
extern PACKAGE System::ResourceString _RSQLite3Error;
#define Disqlite3api_RSQLite3Error System::LoadResourceString(&Disqlite3api::_RSQLite3Error)
extern PACKAGE System::ResourceString _RSQLite3ErrorMsg;
#define Disqlite3api_RSQLite3ErrorMsg System::LoadResourceString(&Disqlite3api::_RSQLite3ErrorMsg)
#define SQLITE3_IDENTIFIER_QUOTE_CHAR (char)(34)
#define SQLITE3_STRING_QUOTE_CHAR (char)(39)
#define SQLITE_OK (Shortint)(0)
#define SQLITE_ERROR (Shortint)(1)
#define SQLITE_INTERNAL (Shortint)(2)
#define SQLITE_PERM (Shortint)(3)
#define SQLITE_ABORT (Shortint)(4)
#define SQLITE_BUSY (Shortint)(5)
#define SQLITE_LOCKED (Shortint)(6)
#define SQLITE_NOMEM (Shortint)(7)
#define SQLITE_READONLY (Shortint)(8)
#define SQLITE_INTERRUPT (Shortint)(9)
#define SQLITE_IOERR (Shortint)(10)
#define SQLITE_CORRUPT (Shortint)(11)
#define SQLITE_NOTFOUND (Shortint)(12)
#define SQLITE_FULL (Shortint)(13)
#define SQLITE_CANTOPEN (Shortint)(14)
#define SQLITE_PROTOCOL (Shortint)(15)
#define SQLITE_EMPTY (Shortint)(16)
#define SQLITE_SCHEMA (Shortint)(17)
#define SQLITE_TOOBIG (Shortint)(18)
#define SQLITE_CONSTRAINT (Shortint)(19)
#define SQLITE_MISMATCH (Shortint)(20)
#define SQLITE_MISUSE (Shortint)(21)
#define SQLITE_NOLFS (Shortint)(22)
#define SQLITE_AUTH (Shortint)(23)
#define SQLITE_FORMAT (Shortint)(24)
#define SQLITE_RANGE (Shortint)(25)
#define SQLITE_NOTADB (Shortint)(26)
#define SQLITE_ROW (Shortint)(100)
#define SQLITE_DONE (Shortint)(101)
#define SQLITE_IOERR_READ (Word)(266)
#define SQLITE_IOERR_SHORT_READ (Word)(522)
#define SQLITE_IOERR_WRITE (Word)(778)
#define SQLITE_IOERR_FSYNC (Word)(1034)
#define SQLITE_IOERR_DIR_FSYNC (Word)(1290)
#define SQLITE_IOERR_TRUNCATE (Word)(1546)
#define SQLITE_IOERR_FSTAT (Word)(1802)
#define SQLITE_IOERR_UNLOCK (Word)(2058)
#define SQLITE_IOERR_RDLOCK (Word)(2314)
#define SQLITE_COPY (Shortint)(0)
#define SQLITE_CREATE_INDEX (Shortint)(1)
#define SQLITE_CREATE_TABLE (Shortint)(2)
#define SQLITE_CREATE_TEMP_INDEX (Shortint)(3)
#define SQLITE_CREATE_TEMP_TABLE (Shortint)(4)
#define SQLITE_CREATE_TEMP_TRIGGER (Shortint)(5)
#define SQLITE_CREATE_TEMP_VIEW (Shortint)(6)
#define SQLITE_CREATE_TRIGGER (Shortint)(7)
#define SQLITE_CREATE_VIEW (Shortint)(8)
#define SQLITE_DELETE (Shortint)(9)
#define SQLITE_DROP_INDEX (Shortint)(10)
#define SQLITE_DROP_TABLE (Shortint)(11)
#define SQLITE_DROP_TEMP_INDEX (Shortint)(12)
#define SQLITE_DROP_TEMP_TABLE (Shortint)(13)
#define SQLITE_DROP_TEMP_TRIGGER (Shortint)(14)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?