⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sdoledb.hpp

📁 SQLDirect Component Library is a light-weight Borland Database Engine replacement for Borland Delphi
💻 HPP
📖 第 1 页 / 共 2 页
字号:
// Borland C++ Builder
// Copyright (c) 1995, 1999 by Borland International
// All rights reserved

// (DO NOT EDIT: machine generated header) 'SDOleDb.pas' rev: 5.00

#ifndef SDOleDbHPP
#define SDOleDbHPP

#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <SDCommon.hpp>	// Pascal unit
#include <SDConsts.hpp>	// Pascal unit
#include <SD_OLEDB_D5.hpp>	// Pascal unit
#include <ComObj.hpp>	// Pascal unit
#include <ActiveX.hpp>	// Pascal unit
#include <SyncObjs.hpp>	// Pascal unit
#include <Registry.hpp>	// Pascal unit
#include <Db.hpp>	// Pascal unit
#include <Classes.hpp>	// Pascal unit
#include <SysUtils.hpp>	// Pascal unit
#include <Windows.hpp>	// Pascal unit
#include <SysInit.hpp>	// Pascal unit
#include <System.hpp>	// Pascal unit

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

namespace Sdoledb
{
//-- type declarations -------------------------------------------------------
__interface IErrorRecords;
typedef System::DelphiInterface<IErrorRecords> _di_IErrorRecords;
__interface INTERFACE_UUID("{0C733A67-2A1C-11CE-ADE5-00AA0044773D}") IErrorRecords  : public IUnknown 
	
{
	
public:
	virtual HRESULT __stdcall AddErrorRecord(Sd_oledb_d5::PErrorInfo pErrorInfo, unsigned dwLookupID, Activex::PDispParams 
		pdispparams, const _di_IUnknown punkCustomError, unsigned dwDynamicErrorID) = 0 ;
	virtual HRESULT __stdcall GetBasicErrorInfo(unsigned ulRecordNum, Sd_oledb_d5::PErrorInfo pErrorInfo
		) = 0 ;
	virtual HRESULT __stdcall GetCustomErrorObject(unsigned ulRecordNum, const GUID &riid, /* out */ _di_IUnknown 
		&ppObject) = 0 ;
	virtual HRESULT __stdcall GetErrorInfo(unsigned ulRecordNum, unsigned lcid, /* out */ _di_IErrorInfo 
		&ppErrorInfo) = 0 ;
	virtual HRESULT __stdcall GetErrorParameters(unsigned ulRecordNum, Activex::PDispParams pdispparams
		) = 0 ;
	virtual HRESULT __stdcall GetRecordCount(/* out */ unsigned &pcRecords) = 0 ;
};

__interface IErrorRecordsSC;
typedef System::DelphiInterface<IErrorRecordsSC> _di_IErrorRecordsSC;
__interface INTERFACE_UUID("{0C733A67-2A1C-11CE-ADE5-00AA0044773D}") IErrorRecordsSC  : public IUnknown 
	
{
	
public:
	virtual HRESULT __safecall AddErrorRecord(Sd_oledb_d5::PErrorInfo pErrorInfo, unsigned dwLookupID, 
		Activex::PDispParams pdispparams, const _di_IUnknown punkCustomError, unsigned dwDynamicErrorID, HRESULT &AddErrorRecord_result
		) = 0 ;
	virtual HRESULT __safecall GetBasicErrorInfo(unsigned ulRecordNum, Sd_oledb_d5::PErrorInfo pErrorInfo
		, HRESULT &GetBasicErrorInfo_result) = 0 ;
	virtual HRESULT __safecall GetCustomErrorObject(unsigned ulRecordNum, const GUID &riid, /* out */ _di_IUnknown 
		&ppObject, HRESULT &GetCustomErrorObject_result) = 0 ;
	virtual HRESULT __safecall GetErrorInfo(unsigned ulRecordNum, unsigned lcid, /* out */ _di_IErrorInfo 
		&ppErrorInfo, HRESULT &GetErrorInfo_result) = 0 ;
	virtual HRESULT __safecall GetErrorParameters(unsigned ulRecordNum, Activex::PDispParams pdispparams
		, HRESULT &GetErrorParameters_result) = 0 ;
	virtual HRESULT __safecall GetRecordCount(/* out */ unsigned &pcRecords, HRESULT &GetRecordCount_result
		) = 0 ;
};

__interface IDBSchemaRowset;
typedef System::DelphiInterface<IDBSchemaRowset> _di_IDBSchemaRowset;
__interface INTERFACE_UUID("{0C733A7B-2A1C-11CE-ADE5-00AA0044773D}") IDBSchemaRowset  : public IUnknown 
	
{
	
public:
	virtual HRESULT __stdcall GetRowset(const _di_IUnknown pUnkOuter, const GUID &rguidSchema, unsigned 
		cRestrictions, Activex::PVariantArg rgRestrictions, const GUID &riid, unsigned cPropertySets, Sd_oledb_d5::PDBPropSetArray 
		rgPropertySets, /* out */ _di_IUnknown &pRowset) = 0 ;
	virtual HRESULT __stdcall GetSchemas(unsigned &cSchemas, /* out */ System::PGUID &prgSchemas, /* out */ 
		PULONG &prgRestrictionSupport) = 0 ;
};

__interface IDBSchemaRowsetSC;
typedef System::DelphiInterface<IDBSchemaRowsetSC> _di_IDBSchemaRowsetSC;
__interface INTERFACE_UUID("{0C733A7B-2A1C-11CE-ADE5-00AA0044773D}") IDBSchemaRowsetSC  : public IUnknown 
	
{
	
public:
	virtual HRESULT __safecall GetRowset(const _di_IUnknown pUnkOuter, const GUID &rguidSchema, unsigned 
		cRestrictions, Activex::PVariantArg rgRestrictions, const GUID &riid, unsigned cPropertySets, Sd_oledb_d5::PDBPropSetArray 
		rgPropertySets, /* out */ _di_IUnknown &pRowset, HRESULT &GetRowset_result) = 0 ;
	virtual HRESULT __safecall GetSchemas(unsigned &cSchemas, /* out */ System::PGUID &prgSchemas, /* out */ 
		PULONG &prgRestrictionSupport, HRESULT &GetSchemas_result) = 0 ;
};

struct TSSErrorInfo;
typedef TSSErrorInfo *PSSErrorInfo;

struct TSSErrorInfo
{
	wchar_t *pwszMessage;
	wchar_t *pwszServer;
	wchar_t *pwszProcedure;
	unsigned lNative;
	Byte bState;
	Byte bClass;
	Word wLineNumber;
} ;

__interface ISQLServerErrorInfo;
typedef System::DelphiInterface<ISQLServerErrorInfo> _di_ISQLServerErrorInfo;
__interface INTERFACE_UUID("{5CF4CA12-EF21-11D0-97E7-00C04FC2AD98}") ISQLServerErrorInfo  : public IUnknown 
	
{
	
public:
	virtual HRESULT __stdcall GetErrorInfo(/* out */ PSSErrorInfo &ppErrorInfo, /* out */ wchar_t * &ppStringsBuffer
		) = 0 ;
};

__interface ISQLServerErrorInfoSC;
typedef System::DelphiInterface<ISQLServerErrorInfoSC> _di_ISQLServerErrorInfoSC;
__interface INTERFACE_UUID("{5CF4CA12-EF21-11D0-97E7-00C04FC2AD98}") ISQLServerErrorInfoSC  : public IUnknown 
	
{
	
public:
	virtual HRESULT __safecall GetErrorInfo(/* out */ PSSErrorInfo &ppErrorInfo, /* out */ wchar_t * &ppStringsBuffer
		, HRESULT &GetErrorInfo_result) = 0 ;
};

class DELPHICLASS ESDOleDbError;
class PASCALIMPLEMENTATION ESDOleDbError : public Sdcommon::ESDEngineError 
{
	typedef Sdcommon::ESDEngineError inherited;
	
public:
	#pragma option push -w-inl
	/* ESDEngineError.Create */ inline __fastcall ESDOleDbError(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 ESDOleDbError(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 ESDOleDbError(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 ESDOleDbError(int Ident)/* overload */ : Sdcommon::ESDEngineError(
		Ident) { }
	#pragma option pop
	#pragma option push -w-inl
	/* Exception.CreateResFmt */ inline __fastcall ESDOleDbError(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 ESDOleDbError(const AnsiString Msg, int AHelpContext) : 
		Sdcommon::ESDEngineError(Msg, AHelpContext) { }
	#pragma option pop
	#pragma option push -w-inl
	/* Exception.CreateFmtHelp */ inline __fastcall ESDOleDbError(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 ESDOleDbError(int Ident, int AHelpContext)/* overload */
		 : Sdcommon::ESDEngineError(Ident, AHelpContext) { }
	#pragma option pop
	#pragma option push -w-inl
	/* Exception.CreateResFmtHelp */ inline __fastcall ESDOleDbError(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 ~ESDOleDbError(void) { }
	#pragma option pop
	
};


class DELPHICLASS TIOleDbDatabase;
class PASCALIMPLEMENTATION TIOleDbDatabase : public Sdcommon::TISqlDatabase 
{
	typedef Sdcommon::TISqlDatabase inherited;
	
private:
	Sd_oledb_d5::_di_IDBInitialize FIDBInitialize;
	Sd_oledb_d5::_di_IDBCreateSession FIDBCreateSession;
	Sd_oledb_d5::_di_IDBCreateCommand FIDBCreateCommand;
	Sd_oledb_d5::_di_ITransactionLocal FITransaction;
	bool FMultResultsSupported;
	int FOutputParamsReturned;
	bool FIsMSSQLProv;
	Sdcommon::TISqlCommand* FCurSqlCmd;
	AnsiString __fastcall OleDbGetDBPropValue(const unsigned * APropIDs, const int APropIDs_Size);
	void __fastcall SetDBInitProps(bool bInitPropSet, bool bIntegratedAuth);
	
protected:
	void __fastcall Check(HRESULT Status);
	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);
	
public:
	__fastcall virtual TIOleDbDatabase(Classes::TStrings* ADbParams);
	__fastcall virtual ~TIOleDbDatabase(void);
	virtual Sdcommon::TISqlCommand* __fastcall CreateSqlCommand(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);
	void __fastcall ReleaseDBHandle(Sdcommon::TISqlCommand* ASqlCmd, bool IsFetchAll);
	__property Sdcommon::TISqlCommand* CurSqlCmd = {read=FCurSqlCmd};
	__property Sd_oledb_d5::_di_IDBCreateCommand DBCreateCommand = {read=FIDBCreateCommand};
	__property bool IsMSSQLProv = {read=FIsMSSQLProv, nodefault};
	__property bool MultResultsSupported = {read=FMultResultsSupported, nodefault};
	__property int OutputParamsReturned = {read=FOutputParamsReturned, nodefault};
};


class DELPHICLASS TIOleDbCommand;
class PASCALIMPLEMENTATION TIOleDbCommand : public Sdcommon::TISqlCommand 
{
	typedef Sdcommon::TISqlCommand inherited;
	
private:
	Sd_oledb_d5::_di_ICommandText FICommandText;
	Sd_oledb_d5::_di_IMultipleResults FIMultipleResults;
	Sd_oledb_d5::_di_IAccessor FIRowAccessor;
	Sd_oledb_d5::_di_IAccessor FIParamAccessor;
	unsigned FHRowAccessor;
	unsigned FHParamAccessor;
	DBBINDING *FRowBindPtr;
	DBBINDING *FParamBindPtr;
	unsigned *FHRows;
	unsigned FCurrRow;
	unsigned FFetchedRows;
	int FPrefetchRows;
	int FRowsAffected;
	bool FIsSingleConn;
	bool FIsSrvCursor;
	bool FNextResults;
	int FBlobParamsBufferOff;
	int FFirstCalcFieldIdx;
	HIDESBASE TIOleDbDatabase* __fastcall GetSqlDatabase(void);
	bool __fastcall CnvtDBData(AnsiString AFieldName, Db::TFieldType ADataType, void * InBuf, void * Buffer
		, int BufSize);
	Db::TDateTimeRec __fastcall CnvtDBDateTime2DateTimeRec(Db::TFieldType ADataType, void * Buffer, int 
		BufSize);
	void __fastcall InternalExecute(bool bFieldDescribe);
	void __fastcall InternalSpGetParams(void);
	void __fastcall ReleaseRowSet(void);
	void __fastcall ReleaseHRows(void);
	void __fastcall SetICommandProps(void);
	void __fastcall SetICommandText(AnsiString Value);
	void __fastcall SetICmdParameterInfo(void);
	AnsiString __fastcall OleDbDataSourceType(Db::TFieldType FieldType);
	
protected:
	Sd_oledb_d5::_di_IRowset FIRowset;
	void __fastcall AcquireDBHandle(void);
	void __fastcall ReleaseDBHandle(void);
	void __fastcall Check(HRESULT Status);
	virtual void __fastcall Connect(void);
	virtual int __fastcall CnvtDateTime2DBDateTime(Db::TFieldType ADataType, System::TDateTime Value, char * 

⌨️ 快捷键说明

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