📄 sdint.hpp
字号:
typedef TISC_TEB TISC_TEB_ARRAY[1];
typedef TISC_TEB *PISC_TEB_ARRAY;
struct TUSER_SEC_DATA
{
short sec_flags;
int uid;
int gid;
int protocol;
char *server;
char *user_name;
char *password;
char *group_name;
char *first_name;
char *middle_name;
char *last_name;
char *dba_user_name;
char *dba_password;
} ;
typedef TUSER_SEC_DATA *PUSER_SEC_DATA;
class DELPHICLASS TIntFunctions;
class PASCALIMPLEMENTATION TIntFunctions : public System::TObject
{
typedef System::TObject inherited;
protected:
unsigned FLibHandle;
public:
int __stdcall (*isc_attach_database)(PISC_STATUS status_vector, short db_name_length, char * db_name
, PISC_DB_HANDLE db_handle, short parm_buffer_length, char * parm_buffer);
void __stdcall (*isc_blob_default_desc)(PISC_BLOB_DESC desc, char * table_name, char * column_name)
;
int __stdcall (*isc_blob_gen_bpb)(PISC_STATUS status_vector, PISC_BLOB_DESC to_desc, PISC_BLOB_DESC
from_desc, Word bpb_buffer_length, char * bpb_buffer, PUShort bpb_length);
int __stdcall (*isc_blob_info)(PISC_STATUS status_vector, void * &blob_handle, short item_list_buffer_length
, char * item_list_buffer, short result_buffer_length, char * result_buffer);
int __stdcall (*isc_blob_lookup_desc)(PISC_STATUS status_vector, PISC_DB_HANDLE db_handle, PISC_TR_HANDLE
trans_handle, char * table_name, char * column_name, PISC_BLOB_DESC desc, char * global_column_name
);
int __stdcall (*isc_blob_set_desc)(PISC_STATUS status_vector, char * table_name, char * column_name
, short subtype, short charset, short segment_size, PISC_BLOB_DESC desc);
int __stdcall (*isc_cancel_blob)(PISC_STATUS status_vector, void * &blob_handle);
int __stdcall (*isc_cancel_events)(PISC_STATUS status_vector, PISC_DB_HANDLE db_handle, PISC_LONG event_id
);
int __stdcall (*isc_close_blob)(PISC_STATUS status_vector, void * &blob_handle);
int __stdcall (*isc_commit_retaining)(PISC_STATUS status_vector, PISC_TR_HANDLE tran_handle);
int __stdcall (*isc_commit_transaction)(PISC_STATUS status_vector, PISC_TR_HANDLE tran_handle);
int __stdcall (*isc_create_blob)(PISC_STATUS status_vector, PISC_DB_HANDLE db_handle, PISC_TR_HANDLE
tran_handle, void * &blob_handle, PISC_QUAD blob_id);
int __stdcall (*isc_create_blob2)(PISC_STATUS status_vector, PISC_DB_HANDLE db_handle, PISC_TR_HANDLE
tran_handle, void * &blob_handle, PISC_QUAD blob_id, short bpb_length, char * bpb_address);
int __stdcall (*isc_create_database)(PISC_STATUS status_vector, short db_name_length, char * db_name
, PISC_DB_HANDLE db_handle, short parm_buffer_length, char * parm_buffer, short parm_7);
int __stdcall (*isc_database_info)(PISC_STATUS status_vector, PISC_DB_HANDLE db_handle, short item_list_buffer_length
, char * item_list_buffer, short result_buffer_length, char * result_buffer);
void __stdcall (*isc_decode_date)(PISC_QUAD ib_date, TTimeDateRec &tm_date);
void __stdcall (*isc_decode_sql_date)(PISC_DATE ib_date, TTimeDateRec &tm_date);
void __stdcall (*isc_decode_sql_time)(PISC_TIME ib_time, TTimeDateRec &tm_date);
void __stdcall (*isc_decode_timestamp)(PISC_TIMESTAMP ib_timestamp, TTimeDateRec &tm_date);
int __stdcall (*isc_detach_database)(PISC_STATUS status_vector, PISC_DB_HANDLE db_handle);
int __stdcall (*isc_drop_database)(PISC_STATUS status_vector, PISC_DB_HANDLE db_handle);
int __stdcall (*isc_dsql_allocate_statement)(PISC_STATUS status_vector, PISC_DB_HANDLE db_handle, PISC_STMT_HANDLE
stmt_handle);
int __stdcall (*isc_dsql_alloc_statement2)(PISC_STATUS status_vector, PISC_DB_HANDLE db_handle, PISC_STMT_HANDLE
stmt_handle);
int __stdcall (*isc_dsql_describe)(PISC_STATUS status_vector, PISC_STMT_HANDLE stmt_handle, Word dialect
, PXSQLDA xsqlda);
int __stdcall (*isc_dsql_describe_bind)(PISC_STATUS status_vector, PISC_STMT_HANDLE stmt_handle, Word
dialect, PXSQLDA xsqlda);
int __stdcall (*isc_dsql_execute)(PISC_STATUS status_vector, PISC_TR_HANDLE tran_handle, PISC_STMT_HANDLE
stmt_handle, Word dialect, PXSQLDA xsqlda);
int __stdcall (*isc_dsql_execute2)(PISC_STATUS status_vector, PISC_TR_HANDLE tran_handle, PISC_STMT_HANDLE
stmt_handle, Word dialect, PXSQLDA in_xsqlda, PXSQLDA out_xsqlda);
int __stdcall (*isc_dsql_execute_immediate)(PISC_STATUS status_vector, PISC_DB_HANDLE db_handle, PISC_TR_HANDLE
tran_handle, Word length, char * statement, Word dialect, PXSQLDA xsqlda);
int __stdcall (*isc_dsql_exec_immed2)(PISC_STATUS status_vector, PISC_DB_HANDLE db_handle, PISC_TR_HANDLE
tran_handle, Word length, char * statement, Word dialect, PXSQLDA in_xsqlda, PXSQLDA out_xsqlda);
int __stdcall (*isc_dsql_fetch)(PISC_STATUS status_vector, PISC_STMT_HANDLE stmt_handle, Word dialect
, PXSQLDA xsqlda);
int __stdcall (*isc_dsql_finish)(PISC_DB_HANDLE db_handle);
int __stdcall (*isc_dsql_free_statement)(PISC_STATUS status_vector, PISC_STMT_HANDLE stmt_handle, Word
option);
int __stdcall (*isc_dsql_prepare)(PISC_STATUS status_vector, PISC_TR_HANDLE tran_handle, PISC_STMT_HANDLE
stmt_handle, Word length, char * statement, Word dialect, PXSQLDA xsqlda);
int __stdcall (*isc_dsql_set_cursor_name)(PISC_STATUS status_vector, PISC_STMT_HANDLE stmt_handle,
char * cursor_name, Word type_reserved);
int __stdcall (*isc_dsql_sql_info)(PISC_STATUS status_vector, PISC_STMT_HANDLE stmt_handle, short item_length
, char * items, short buffer_length, char * buffer);
void __stdcall (*isc_encode_date)(TTimeDateRec &tm_date, PISC_QUAD ib_date);
void __stdcall (*isc_encode_sql_date)(TTimeDateRec &tm_date, PISC_DATE ib_date);
void __stdcall (*isc_encode_sql_time)(TTimeDateRec &tm_date, PISC_TIME ib_time);
void __stdcall (*isc_encode_timestamp)(TTimeDateRec &tm_date, PISC_TIMESTAMP ib_timestamp);
void __stdcall (*isc_event_counts)(PISC_STATUS status_vector, short buffer_length, char * event_buffer
, char * result_buffer);
int __stdcall (*isc_get_segment)(PISC_STATUS status_vector, void * &blob_handle, Word &actual_seg_length
, Word seg_buffer_length, char * seg_buffer);
int __stdcall (*isc_interprete)(char * buffer, PISC_STATUS &status_vector);
int __stdcall (*isc_open_blob)(PISC_STATUS status_vector, PISC_DB_HANDLE db_handle, PISC_TR_HANDLE
tran_handle, void * &blob_handle, PISC_QUAD blob_id);
int __stdcall (*isc_open_blob2)(PISC_STATUS status_vector, PISC_DB_HANDLE db_handle, PISC_TR_HANDLE
tran_handle, void * &blob_handle, const TGDS_QUAD blob_id, short bpb_length, char * bpb_buffer);
int __stdcall (*isc_prepare_transaction)(PISC_STATUS status_vector, PISC_TR_HANDLE tran_handle);
int __stdcall (*isc_prepare_transaction2)(PISC_STATUS status_vector, PISC_TR_HANDLE tran_handle, short
msg_length, char * msg);
void __stdcall (*isc_print_sqlerror)(short sqlcode, PISC_STATUS status_vector);
int __stdcall (*isc_print_status)(PISC_STATUS status_vector);
int __stdcall (*isc_put_segment)(PISC_STATUS status_vector, void * &blob_handle, Word seg_buffer_len
, char * seg_buffer);
int __stdcall (*isc_rollback_retaining)(PISC_STATUS status_vector, PISC_TR_HANDLE tran_handle);
int __stdcall (*isc_rollback_transaction)(PISC_STATUS status_vector, PISC_TR_HANDLE tran_handle);
int __stdcall (*isc_start_multiple)(PISC_STATUS status_vector, PISC_TR_HANDLE tran_handle, short db_handle_count
, TISC_TEB &teb_vector_address);
int __cdecl (*isc_start_transaction)(PISC_STATUS status_vector, PISC_TR_HANDLE tran_handle, short db_handle_count
, PISC_DB_HANDLE db_handle, int tpb_length, char * tpb_address);
int __stdcall (*isc_sqlcode)(PISC_STATUS &status_vector);
void __stdcall (*isc_sql_interprete)(short sql_code, char * buffer, short buffer_length);
int __stdcall (*isc_transaction_info)(PISC_STATUS status_vector, PISC_TR_HANDLE tran_handle, short
item_list_buffer_length, char * item_list_buffer, short result_buffer_length, char * result_buffer
);
int __stdcall (*isc_vax_integer)(char * buffer, short length);
int __stdcall (*isc_version)(PISC_DB_HANDLE db_handle, TISC_CALLBACK isc_arg2, void * isc_arg3);
int __stdcall (*isc_add_user)(PISC_STATUS status_vector, TUSER_SEC_DATA &user_sec_data);
int __stdcall (*isc_delete_user)(PISC_STATUS status_vector, TUSER_SEC_DATA &user_sec_data);
int __stdcall (*isc_modify_user)(PISC_STATUS status_vector, TUSER_SEC_DATA &user_sec_data);
virtual void __fastcall SetApiCalls(unsigned ASqlLibModule);
virtual void __fastcall ClearApiCalls(void);
bool __fastcall IsAvailFunc(AnsiString AName);
public:
#pragma option push -w-inl
/* TObject.Create */ inline __fastcall TIntFunctions(void) : System::TObject() { }
#pragma option pop
#pragma option push -w-inl
/* TObject.Destroy */ inline __fastcall virtual ~TIntFunctions(void) { }
#pragma option pop
};
class DELPHICLASS ESDIntError;
class PASCALIMPLEMENTATION ESDIntError : public Sdcommon::ESDEngineError
{
typedef Sdcommon::ESDEngineError inherited;
public:
#pragma option push -w-inl
/* ESDEngineError.Create */ inline __fastcall ESDIntError(int AErrorCode, int ANativeError, const AnsiString
Msg, int AErrorPos) : Sdcommon::ESDEngineError(AErrorCode, ANativeError, Msg, AErrorPos) { }
#pragma option pop
#pragma option push -w-inl
/* ESDEngineError.CreateDefPos */ inline __fastcall virtual ESDIntError(int AErrorCode, int ANativeError
, const AnsiString Msg) : Sdcommon::ESDEngineError(AErrorCode, ANativeError, Msg) { }
#pragma option pop
public:
#pragma option push -w-inl
/* Exception.CreateFmt */ inline __fastcall ESDIntError(const AnsiString Msg, const System::TVarRec
* Args, const int Args_Size) : Sdcommon::ESDEngineError(Msg, Args, Args_Size) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateRes */ inline __fastcall ESDIntError(int Ident)/* overload */ : Sdcommon::ESDEngineError(
Ident) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateResFmt */ inline __fastcall ESDIntError(int Ident, const System::TVarRec * Args,
const int Args_Size)/* overload */ : Sdcommon::ESDEngineError(Ident, Args, Args_Size) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateHelp */ inline __fastcall ESDIntError(const AnsiString Msg, int AHelpContext) :
Sdcommon::ESDEngineError(Msg, AHelpContext) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateFmtHelp */ inline __fastcall ESDIntError(const AnsiString Msg, const System::TVarRec
* Args, const int Args_Size, int AHelpContext) : Sdcommon::ESDEngineError(Msg, Args, Args_Size, AHelpContext
) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateResHelp */ inline __fastcall ESDIntError(int Ident, int AHelpContext)/* overload */
: Sdcommon::ESDEngineError(Ident, AHelpContext) { }
#pragma option pop
#pragma option push -w-inl
/* Exception.CreateResFmtHelp */ inline __fastcall ESDIntError(System::PResStringRec ResStringRec,
const System::TVarRec * Args, const int Args_Size, int AHelpContext)/* overload */ : Sdcommon::ESDEngineError(
ResStringRec, Args, Args_Size, AHelpContext) { }
#pragma option pop
public:
#pragma option push -w-inl
/* TObject.Destroy */ inline __fastcall virtual ~ESDIntError(void) { }
#pragma option pop
};
typedef TMetaClass*ESDIntErrorClass;
#pragma pack(push, 1)
struct TIIntConnInfo
{
Byte ServerType;
void * *DBHandle;
void * *TRHandle;
} ;
#pragma pack(pop)
class DELPHICLASS TICustomIntDatabase;
class PASCALIMPLEMENTATION TICustomIntDatabase : public Sdcommon::TISqlDatabase
{
typedef Sdcommon::TISqlDatabase inherited;
private:
void *FHandle;
AnsiString FDPBBuffer;
short FDPBVersionLength;
short FDPBLength;
char *FTPBBuffer;
Word FTPBConstLength;
Word FTPBLength;
int *FesvPtr;
bool FIsEnableInts;
int FSQLDialect;
bool FTransActive;
bool FTransRetaining;
TIntFunctions* __fastcall GetApiCalls(void);
PISC_DB_HANDLE __fastcall GetDBHandle(void);
PISC_TR_HANDLE __fastcall GetTRHandle(void);
protected:
TIntFunctions* FApiCalls;
virtual void __fastcall AllocHandle(bool DBHandles);
virtual void __fastcall FreeHandle(bool DBHandles);
void __fastcall Check(int Status);
bool __fastcall ConstructTPB(void);
void __fastcall ConstructDPB(AnsiString sUserName, AnsiString sPassword);
bool __fastcall IsPreservedOnRollback(void);
virtual void __fastcall FreeSqlLib(void) = 0 ;
virtual void __fastcall LoadSqlLib(void) = 0 ;
virtual TMetaClass* __fastcall GetErrorClass(void) = 0 ;
virtual void * __fastcall GetHandle(void);
virtual void __fastcall DoConnect(const AnsiString sRemoteDatabase, const AnsiString sUserName, const
AnsiString sPassword);
virtual void __fastcall DoDisconnect(bool Force);
virtual void __fastcall DoCommit(void);
virtual void __fastcall DoRollback(void);
virtual void __fastcall DoStartTransaction(void);
virtual void __fastcall SetAutoCommitOption(bool Value);
virtual void __fastcall SetHandle(void * AHandle);
public:
__fastcall virtual TICustomIntDatabase(Classes::TStrings* ADbParams);
__fastcall virtual ~TICustomIntDatabase(void);
virtual int __fastcall GetClientVersion(void);
virtual int __fastcall GetServerVersion(void);
virtual AnsiString __fastcall GetVersionString(void);
virtual Sdcommon::TISqlCommand* __fastcall GetSchemaInfo(Sdcommon::TSDSchemaType ASchemaType, AnsiString
AObjectName);
virtual void __fastcall SetTransIsolation(Sdcommon::TISqlTransIsolation Value);
virtual bool __fastcall SPDescriptionsAvailable(void);
virtual bool __fastcall TestConnected(void);
__property TIntFunctions* ApiCalls = {read=GetApiCalls};
__property PISC_DB_HANDLE DBHandle = {read=GetDBHandle};
__property PISC_TR_HANDLE TRHandle = {read=GetTRHandle};
__property bool IsEnableInts = {read=FIsEnableInts, nodefault};
__property int SQLDialect = {read=FSQLDialect, nodefault};
};
typedef int TLongIntArray[1];
typedef int *PLongIntArray;
class DELPHICLASS TICustomIntCommand;
class PASCALIMPLEMENTATION TICustomIntCommand : public Sdcommon::TISqlCommand
{
typedef Sdcommon::TISqlCommand inherited;
private:
void * *FPStmtHandle;
int *FesvPtr;
TXSQLDA *FOutXSQLDA;
TXSQLDA *FInXSQLDA;
int FStmtType;
int FBaseSelectBufferSize;
int FBaseBindBufferSize;
int FPseudoBlobSelBufOffs;
bool FExecuted;
Db::TFieldType __fastcall IBFieldDataType(const TXSQLVAR &SqlVar);
int __fastcall IBReadBlob(PISC_QUAD BlobIDPtr, Sdcommon::TBytes &BlobData);
int __fastcall IBWriteBlobParam(PISC_QUAD BlobIDPtr, const char * Buffer, int Count);
void __fastcall IBAllocOutDescs(void);
void __fastcall IBFreeOutDescs(void);
void __fastcall IBAllocInDescs(void);
void __fastcall IBFreeInDescs(void);
void __fastcall CnvtCurrencyToDBNumeric(System::Currency Curr, TXSQLVAR &SqlVar);
System::Currency __fastcall CnvtDBNumericToCurrency(const TXSQLVAR &SqlVar, char * InData);
double __fastcall CnvtDBNumericToFloat(const TXSQLVAR &SqlVar, char * InData);
Db::TDateTimeRec __fastcall CnvtDBDateTime2DateTimeRec(Db::TFieldType ADataType, char * Buffer, int
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -