VCOM:VectorWorks:Extension:IDBDatabase: Difference between revisions

From Vectorworks Developer
Jump to navigation Jump to search
No edit summary
 
m (1 revision)
(No difference)

Revision as of 14:57, 12 August 2013

.SDK|SDK ..SDK:Types|SDK Types ..VCOM:VCOM (Vectorworks Component Object Model)|VCOM Basics ..VCOM:Class Reference|VCOM Class Reference

Description

namespace VectorWorks::Extension

Interface

// ---------------------------------------------------------------------------------------------------
// {CDB4EBE8-D45C-42bf-83D3-0C0313BE26CE}
static const VWIID IID_DBDatabase	= { 0xcdb4ebe8, 0xd45c, 0x42bf, { 0x83, 0xd3, 0xc, 0x3, 0x13, 0xbe, 0x26, 0xce } };

class DYNAMIC_ATTRIBUTE IDBDatabase : public IVWUnknown
{
public:
	virtual VCOMError	VCOM_CALLTYPE Connect(const TXString& dsn, const TXString& user, const TXString& password) = 0;
	virtual VCOMError	VCOM_CALLTYPE ConnectWithBrowser(IDBConnectionString** outConnectionString) = 0;
	virtual	VCOMError	VCOM_CALLTYPE ConnectDriver(IDBConnectionString* inOutConnectionString) = 0;
	
	virtual	VCOMError	VCOM_CALLTYPE GetQueryBuilderInfo(IDBConnectionString* inOutQueryBuilder) = 0;

	virtual VCOMError	VCOM_CALLTYPE GetNumRows(const TXString& tableName, size_t& outCnt) = 0;
	virtual VCOMError	VCOM_CALLTYPE ListTables(bool includeViews, bool includeSystemTables, TXStringArray& outArrTables) = 0;
	virtual VCOMError	VCOM_CALLTYPE ListAvailableDataSources(TXStringArray& dataSources) = 0;
	virtual VCOMError	VCOM_CALLTYPE ListAllDrivers(TXStringArray& drivers) = 0;
	virtual VCOMError	VCOM_CALLTYPE ListAllColumns(const TXString& tableName, bool identifyKeyColumns, TVWArray_DBTableColumn& outArrColumns) = 0;

	virtual VCOMError	VCOM_CALLTYPE Execute(const TXString& sql) = 0;
	virtual VCOMError	VCOM_CALLTYPE Execute(const TXString& sql, Sint32& outResultCount) = 0;
	virtual VCOMError	VCOM_CALLTYPE ExecuteQuery(const TXString& sql, IDBResultSet** ppOutResultSet) = 0;
	virtual VCOMError	VCOM_CALLTYPE ExecuteQuery(const TXString& sql, ECursorType cursorType, bool bScrollable, IDBResultSet** ppOutResultSet) = 0;

	virtual VCOMError	VCOM_CALLTYPE Commit() = 0;
	virtual VCOMError	VCOM_CALLTYPE Rollback() = 0;

	virtual bool		VCOM_CALLTYPE IsOpened() = 0;
	virtual void		VCOM_CALLTYPE SetTimeout(Sint32 timeOut) = 0;
	virtual Sint32		VCOM_CALLTYPE GetTimeout() = 0;

	virtual TXString	VCOM_CALLTYPE GetLastErrorMessage() = 0;
	virtual TXString	VCOM_CALLTYPE GetLastErrorState() = 0;
	virtual Sint32		VCOM_CALLTYPE GetLastErrorCode() = 0;
	virtual TXString	VCOM_CALLTYPE GetLastErrorInternalDesc() = 0;

// Vectorworks 2012
public:
	virtual VCOMError	VCOM_CALLTYPE ConnectWithBrowserN(TXString& outConnectionString) = 0;
	virtual	VCOMError	VCOM_CALLTYPE ConnectDriverN(const TXString& connectionString) = 0;
	virtual VCOMError	VCOM_CALLTYPE GetDriverInfo(TXString& outDriverName, TXString& outDriverID, TXString& outServer, TXString& outDatabase) = 0;
	virtual VCOMError	VCOM_CALLTYPE ListAllColumnsN(const TXString& inTableName, bool inIdentifyKeyColumns, int driverNotToDoTheJob, TVWArray_DBTableColumn& outArrColumns) = 0;
	virtual VCOMError	VCOM_CALLTYPE GetNumRowsN(const TXString& inTableName, int driverNoToDoTheJob, size_t& outCnt) = 0;
	virtual VCOMError	VCOM_CALLTYPE ExecuteQueryN(const TXString& sql, int driverNoToDoTheJob, IDBResultSet** ppOutResultSet) = 0;
};

Members

Connect
ConnectWithBrowser
ConnectDriver
GetQueryBuilderInfo
GetNumRows
ListTables
ListAvailableDataSources
ListAllDrivers
ListAllColumns
Execute
Execute
ExecuteQuery
ExecuteQuery
Commit
Rollback
IsOpened
SetTimeout
GetTimeout
GetLastErrorMessage
GetLastErrorState
GetLastErrorCode
GetLastErrorInternalDesc
ConnectWithBrowserN
ConnectDriverN
GetDriverInfo
ListAllColumnsN
GetNumRowsN
ExecuteQueryN

Remarks

There is predefined type for smart VCOM pointer VCOMPtr to IDBDatabase interface:

typedef VCOMPtr<IDBDatabase>  IDBDatabasePtr;

Version

Available from: Vectorworks 2010

See Also

VCOM:VCOMPtr

[[VCOM:VCOMPtr]]