OLE DB Programmer's Reference |
This appendix lists the prototypes of all interfaces in OLE DB.
interface IAccessor { HRESULT AddRefAccessor ( HACCESSOR hAccessor, DBREFCOUNT *pcRefCount); HRESULT CreateAccessor ( DBACCESSORFLAGS dwAccessorFlags, DBCOUNTITEM cBindings, const DBBINDING rgBindings[], DBLENGTH cbRowSize, HACCESSOR *phAccessor, DBBINDSTATUS rgStatus[]); HRESULT GetBindings ( HACCESSOR hAccessor, DBACCESSORFLAGS *pdwAccessorFlags, DBCOUNTITEM *pcBindings, DBBINDING **prgBindings); HRESULT ReleaseAccessor ( HACCESSOR hAccessor, DBREFCOUNT *pcRefCount); }; interface IAlterIndex { HRESULT AlterIndex ( DBID * pTableID, DBID * pIndexID, DBID * pNewIndexID, ULONG cPropertySets, DBPROPSET rgPropertySet[]); }; interface IAlterTable { HRESULT AlterColumn ( DBID * pTableID, DBID * pColumnID, DBCOLUMNDESCFLAGS dwColumnDescFlags, DBCOLUMNDESC * pColumnDesc); HRESULT AlterTable ( DBID * pTableID, DBID * pNewTableID, ULONG cPropertySets, DBPROPSET rgPropertySet[]); }; interface IBindResource { HRESULT Bind( IUnknown * pUnkOuter, LPCOLESTR pwszURL, DBBINDURLFLAG dwBindURLFlags, REFGUID rguid, REFIID riid, IAuthenticate * pAuthenticate, DBIMPLICITSESSION * pImplSession, DBBINDURLSTATUS * pdwBindStatus, IUnknown ** ppUnk); }; interface IChapteredRowset { HRESULT AddRefChapter ( HCHAPTER hChapter, DBREFCOUNT *pcRefCount); HRESULT ReleaseChapter ( HCHAPTER hChapter, DBREFCOUNT *pcRefCount); }; interface IColumnsInfo { HRESULT GetColumnInfo ( DBORDINAL *pcColumns, DBCOLUMNINFO **prgInfo, OLECHAR **ppStringsBuffer); HRESULT MapColumnIDs ( DBORDINAL cColumnIDs, const DBID rgColumnIDs[], DBORDINAL rgColumns[]); }; interface IColumnsInfo2 { HRESULT GetRestrictedColumnInfo( DBORDINAL cColumnIDMasks, const DBID rgColumnIDMasks[ ], DWORD dwFlags, DBORDINAL *pcColumns, DBID **prgColumnIDs, DBCOLUMNINFO **prgColumnInfo, OLECHAR **ppStringsBuffer); }; interface IColumnsRowset { HRESULT GetAvailableColumns ( DBORDINAL *pcOptColumns, DBID **prgOptColumns); HRESULT GetColumnsRowset ( IUnknown *pUnkOuter, DBORDINAL cOptColumns, const DBID rgOptColumns[], REFIID riid, ULONG cPropertySets, DBPROPSET rgPropertySets[], IUnknown **ppColRowset); }; interface ICommand { HRESULT Cancel(); HRESULT Execute ( IUnknown *pUnkOuter, REFIID riid, DBPARAMS *pParams, DBROWCOUNT *pcRowsAffected, IUnknown **ppRowset); HRESULT GetDBSession ( REFIID riid, IUnknown ** ppSession); }; interface ICommandPersist { HRESULT DeleteCommand( DBID * pCommandID); HRESULT GetCurrentCommand( DBID * pCommandID); HRESULT LoadCommand( DBID * pCommandID, DWORD dwFlags); HRESULT SaveCommand( DBID * pCommandID, DWORD dwFlags); }; interface ICommandPrepare { HRESULT Prepare ( ULONG cExpectedRuns); HRESULT Unprepare(); }; interface ICommandProperties { HRESULT GetProperties ( const ULONG cPropertyIDSets, const DBPROPIDSET rgPropertyIDSets[], ULONG * pcPropertySets, DBPROPSET ** prgPropertySets); HRESULT SetProperties ( ULONG cPropertySets, DBPROPSET rgPropertySets[]); }; interface ICommandStream { HRESULT GetCommandStream ( IID *piid, GUID *pguidDialect, IUnknown **ppCommandStream); HRESULT SetCommandStream ( REFIID riid, REFGUID rguidDialect, IUnknown *pCommandStream); }; interface ICommandText : ICommand { HRESULT GetCommandText ( GUID * pguidDialect, LPOLESTR * ppwszCommand); HRESULT SetCommandText ( REFGUID rguidDialect, LPCOLESTR pwszCommand); }; interface ICommandWithParameters { HRESULT GetParameterInfo ( DB_UPARAMS *pcParams, DBPARAMINFO **prgParamInfo, OLECHAR **ppNamesBuffer); HRESULT MapParameterNames ( DB_UPARAMS cParamNames, const OLECHAR *rgParamNames[], DB_LPARAMS rgParamOrdinals[]); HRESULT SetParameterInfo ( DB_UPARAMS cParams, const DB_UPARAMS rgParamOrdinals[], const DBPARAMBINDINFO rgParamBindInfo[]); }; interface IConvertType { HRESULT CanConvert ( DBTYPE wFromType, DBTYPE wToType, DBCONVERTFLAGS dwConvertFlags); }; interface ICreateRow { HRESULT CreateRow( IUnknown * pUnkOuter, LPCOLESTR pwszURL, DBBINDURLFLAG dwBindURLFlags, REFGUID rguid, REFIID riid, IAuthenticate * pAuthenticate, DBIMPLICITSESSION * pImplSession, DBBINDURLSTATUS * pdwBindStatus, LPOLESTR * ppwszNewURL, IUnknown ** ppUnk); }; interface IDBAsynchNotify { HRESULT OnLowResource ( DB_DWRESERVE dwReserved); HRESULT OnProgress ( HCHAPTER hChapter, ULONG ulOperation, DBCOUNTITEM ulProgress, DBCOUNTITEM ulProgressMax, ULONG ulAsynchPhase, LPOLESTR pwszStatusText); HRESULT OnStop ( HCHAPTER hChapter, ULONG ulOperation, HRESULT hrStatus, LPOLESTR pwszStatusText); }; interface IDBAsynchStatus { HRESULT Abort ( HCHAPTER hChapter, ULONG ulOperation); HRESULT GetStatus ( HCHAPTER hChapter, ULONG ulOperation, DBCOUNTITEM *pulProgress, DBCOUNTITEM *pulProgressMax, ULONG *pulAsynchPhase, LPOLESTR *ppwszStatusText); }; interface IDBBinderProperties { HRESULT Reset(); }; interface IDBCreateCommand { HRESULT CreateCommand( IUnknown * pUnkOuter, REFIID riid, IUnknown ** ppCommand); }; interface IDBCreateSession { HRESULT CreateSession ( IUnknown * pUnkOuter, REFIID riid, IUnknown ** ppDBSession); }; interface IDBDataSourceAdmin { HRESULT CreateDataSource( ULONG cPropertySets, DBPROPSET rgPropertySets[], IUnknown * pUnkOuter, REFIID riid, IUnknown ** ppSession); HRESULT DestroyDataSource (); HRESULT GetCreationProperties ( ULONG cPropertyIDSets, const DBPROPIDSET rgPropertyIDSets[], ULONG * pcPropertyInfoSets, DBPROPINFOSET ** prgPropertyInfoSets, OLECHAR ** ppDescBuffer); HRESULT ModifyDataSource ( ULONG cPropertySets, DBPROPSET rgPropertySets[]); }; interface IDBInfo { HRESULT GetKeywords( LPOLESTR * ppwszKeywords); HRESULT GetLiteralInfo( ULONG cLiterals, const DBLITERAL rgLiterals[], ULONG * pcLiteralInfo, DBLITERALINFO ** prgLiteralInfo, OLECHAR ** ppCharBuffer); }; interface IDBInitialize { HRESULT Initialize(); HRESULT Uninitialize(); }; interface IDBProperties { HRESULT GetProperties ( ULONG cPropertyIDSets, const DBPROPIDSET rgPropertyIDSets[], ULONG * pcPropertySets, DBPROPSET ** prgPropertySets); HRESULT GetPropertyInfo( ULONG cPropertyIDSets, const DBPROPIDSET rgPropertyIDSets[], ULONG * pcPropertyInfoSets, DBPROPINFOSET ** prgPropertyInfoSets, OLECHAR ** ppDescBuffer); HRESULT SetProperties ( ULONG cPropertySets, DBPROPSET rgPropertySets[]); }; interface IDBSchemaRowset { HRESULT GetRowset ( IUnknown * punkOuter, REFGUID rguidSchema, ULONG cRestrictions, const VARIANT rgRestrictions[], REFIID riid, ULONG cPropertySets, DBPROPSET rgPropertySets[], IUnknown ** ppRowset); HRESULT GetSchemas ( ULONG * pcSchemas, GUID ** prgSchemas, ULONG ** prgRestrictionSupport); }; interface IErrorInfo { HRESULT GetDescription ( BSTR * pbstrDescription); HRESULT GetGUID ( GUID * pguid); HRESULT GetHelpContext ( DWORD * pdwHelpContext); HRESULT GetHelpFile ( BSTR * pbstrHelpFile); HRESULT GetSource ( BSTR * pbstrSource); }; interface IErrorLookup { HRESULT GetErrorDescription ( HRESULT hrError, DWORD dwLookupID, DISPPARAMS * pdispparams, LCID lcid, BSTR * pbstrSource, BSTR * pbstrDescription); HRESULT GetHelpInfo ( HRESULT hrError, DWORD dwLookupID, LCID lcid, BSTR * pbstrHelpFile, DWORD * pdwHelpContext); HRESULT ReleaseErrors ( const DWORD dwDynamicErrorID); }; interface IErrorRecords { HRESULT AddErrorRecord ( ERRORINFO * pErrorInfo, DWORD dwLookupID, DISPPARAMS * pdispparams, IUnknown * punkCustomError, DWORD dwDynamicErrorID); HRESULT GetBasicErrorInfo ( ULONG ulRecordNum, ERRORINFO * pErrorInfo); HRESULT GetCustomErrorObject ( ULONG ulRecordNum, REFIID riid, IUnknown ** ppObject); HRESULT GetErrorInfo ( ULONG ulRecordNum, LCID lcid, IErrorInfo ** ppErrorInfo); HRESULT GetErrorParameters ( ULONG ulRecordNum, DISPPARAMS * pdispparams); HRESULT GetRecordCount ( ULONG * pcRecords); }; interface IGetDataSource { HRESULT GetDataSource ( REFIID riid, IUnknown ** ppDataSource); }; interface IGetRow { HRESULT GetRowFromHROW( IUnknown * pUnkOuter, HROW hRow, REFIID riid, IUnknown ** ppUnk); HRESULT GetURLFromHROW( HROW hRow, LPOLESTR * ppwszURL); }; interface IGetSession { HRESULT GetSession( REFIID riid, IUnknown ** ppSession); }; interface IGetSourceRow { HRESULT GetSourceRow( REFIID riid, IUnknown ** ppRow); }; interface IIndexDefinition { HRESULT CreateIndex( DBID *pTableID, DBID *pIndexID, DBORDINAL cIndexColumnDescs, const DBINDEXCOLUMNDESC rgIndexColumnDescs[], ULONG cPropertySets, DBPROPSET rgPropertySets[], DBID **ppIndexID); HRESULT DropIndex( DBID * pTableID, DBID * pIndexID); }; interface IMultipleResults { HRESULT GetResult( IUnknown *pUnkOuter, DBRESULTFLAG lResultFlag, REFIID riid, DBROWCOUNT *pcRowsAffected, IUnknown **ppRowset); }; interface IOpenRowset { HRESULT OpenRowset( IUnknown * pUnkOuter, DBID * pTableID, DBID * pIndexID, REFIID riid, ULONG cPropertySets, DBPROPSET rgPropertySets[], IUnknown ** ppRowset); }; interface IParentRowset { HRESULT GetChildRowset( IUnknown *pUnkOuter, DBORDINAL iOrdinal, REFIID riid, IUnknown **ppRowset); }; interface IRegisterProvider { HRESULT GetURLMapping( LPCOLESTR pwszURL, DB_DWRESERVE dwReserved, CLSID *pclsidProvider); HRESULT SetURLMapping( LPCOLESTR pwszURL, DB_DWRESERVE dwReserved, REFCLSID rclsidProvider); HRESULT UnregisterProvider( LPCOLESTR pwszURL, DB_DWRESERVE dwReserved, REFCLSID rclsidProvider); }; interface IRow { HRESULT GetColumns( DBORDINAL cColumns, DBCOLUMNACCESS rgColumns[ ]); HRESULT GetSourceRowset( REFIID riid, IUnknown ** ppRowset, HROW * phRow); HRESULT Open( IUnknown * pUnkOuter, DBID * pColumnID, REFGUID rguidColumnType, DWORD dwFlags, REFIID riid, IUnknown ** ppUnk); }; interface IRowChange { HRESULT SetColumns( DBORDINAL cColumns, DBCOLUMNACCESS rgColumns[ ]); }; interface IRowSchemaChange { HRESULT AddColumns( DBORDINAL cColumns, const DBCOLUMNINFO rgNewColumnInfo[ ], DBCOLUMNACCESS rgColumns[ ]); HRESULT DeleteColumns( DBORDINAL cColumns, const DBID rgColumnIDs[ ], DBSTATUS rgdwStatus[ ]); }; interface IRowset { HRESULT AddRefRows( DBCOUNTITEM cRows, const HROW rghRows[], DBREFCOUNT rgRefCounts[], DBROWSTATUS rgRowStatus[]); HRESULT GetData ( HROW hRow, HACCESSOR hAccessor, void * pData); HRESULT GetNextRows ( HCHAPTER hChapter, DBROWOFFSET lRowsOffset, DBROWCOUNT cRows, DBCOUNTITEM *pcRowsObtained, HROW **prghRows); HRESULT ReleaseRows ( DBCOUNTITEM cRows, const HROW rghRows[], DBROWOPTIONS rgRowOptions[] DBREFCOUNT rgRefCounts[], DBROWSTATUS rgRowStatus[]); HRESULT RestartPosition ( HCHAPTER hChapter); }; interface IRowsetBookmark { HRESULT PositionOnBookmark ( HCHAPTER hChapter, DBBKMARK cbBookmark, const BYTE *pBookmark); }; interface IRowsetChange { HRESULT DeleteRows ( HCHAPTER hChapter, DBCOUNTITEM cRows, const HROW rghRows[], DBROWSTATUS rgRowStatus[]); HRESULT InsertRow ( HCHAPTER hChapter, HACCESSOR hAccessor, void * pData, HROW * phRow); HRESULT SetData ( HROW hRow, HACCESSOR hAccessor, void * pData); }; interface IRowsetChapterMember { HRESULT IsRowInChapter ( HCHAPTER hChapter, HROW hRow); }; interface IRowsetCurrentIndex { HRESULT GetIndex ( DBID ** ppIndexID); HRESULT SetIndex ( DBID * pIndexID); }; interface IRowsetFind { HRESULT FindNextRow ( HCHAPTER hChapter, HACCESSOR hAccessor, void *pFindValue, DBCOMPAREOP CompareOp, DBBKMARK cbBookmark, const BYTE *pBookmark, DBROWOFFSET lRowsOffset, DBROWCOUNT cRows, DBCOUNTITEM *pcRowsObtained, HROW **prghRows); }; interface IRowsetIdentity { HRESULT IsSameRow ( HROW hThisRow, HROW hThatRow); }; interface IRowsetIndex { HRESULT GetIndexInfo ( DBORDINAL *pcKeyColumns, DBINDEXCOLUMNDESC **prgIndexColumnDesc, ULONG *pcIndexProperties, DBPROPSET **prgIndexProperties); HRESULT Seek ( HACCESSOR hAccessor, DBORDINAL cKeyValues, void *pData, DBSEEK dwSeekOptions); HRESULT SetRange ( HACCESSOR hAccessor, DBORDINAL cStartKeyColumns, void *pStartData, DBORDINAL cEndKeyColumns, void *pEndData, DBRANGE dwRangeOptions); }; interface IRowsetInfo { HRESULT GetProperties ( const ULONG cPropertyIDSets, const DBPROPIDSET rgPropertyIDSets[], ULONG * pcPropertySets, DBPROPSET ** prgPropertySets); HRESULT GetReferencedRowset ( DBORDINAL iOrdinal, REFIID riid, IUnknown **ppReferencedRowset); HRESULT GetSpecification ( REFIID riid, IUnknown ** ppSpecification); }; interface IRowsetLocate : IRowset { HRESULT Compare ( HCHAPTER hChapter, DBBKMARK cbBookmark1, const BYTE *pBookmark1, DBBKMARK cbBookmark2, const BYTE *pBookmark2, DBCOMPARE *pComparison); HRESULT GetRowsAt ( HWATCHREGION hReserved1, HCHAPTER hChapter, DBBKMARK cbBookmark, const BYTE *pBookmark, DBROWOFFSET lRowsOffset, DBROWCOUNT cRows, DBCOUNTITEM *pcRowsObtained, HROW **prghRows); HRESULT GetRowsByBookmark ( HCHAPTER hChapter, DBCOUNTITEM cRows, const DBBKMARK rgcbBookmarks[], const BYTE *rgpBookmarks[], HROW rghRows[], DBROWSTATUS rgRowStatus[]); HRESULT Hash ( HCHAPTER hChapter, DBBKMARK cBookmarks, const DBBKMARK rgcbBookmarks[], const BYTE *rgpBookmarks[], DBHASHVALUE rgHashedValues[], DBROWSTATUS rgBookmarkStatus[]); }; interface IRowsetNotify { HRESULT OnFieldChange ( IRowset *pRowset, HROW hRow, DBORDINAL cColumns, DBORDINAL rgColumns[], DBREASON eReason, DBEVENTPHASE ePhase, BOOL fCantDeny); HRESULT OnRowChange ( IRowset *pRowset, DBCOUNTITEM cRows, const HROW rghRows[], DBREASON eReason, DBEVENTPHASE ePhase, BOOL fCantDeny); HRESULT OnRowsetChange ( IRowset * pRowset, DBREASON eReason, DBEVENTPHASE ePhase, BOOL fCantDeny); }; interface IRowsetRefresh { HRESULT GetLastVisibleData ( HROW hRow, HACCESSOR hAccessor, void * pData); HRESULT RefreshVisibleData ( HCHAPTER hChapter, DBCOUNTITEM cRows, const HROW rghRows[], BOOL fOverwrite, DBCOUNTITEM *pcRowsRefreshed, HROW **prghRowsRefreshed, DBROWSTATUS **prgRowStatus); }; interface IRowsetResynch { HRESULT GetVisibleData (HROW hRow, HACCESSOR hAccessor, void * pData); HRESULT ResynchRows ( DBCOUNTITEM cRows, const HROW rghRows[], ULONG *pcRowsResynched, HROW **prghRowsResynched, DBROWSTATUS **prgRowStatus); }; interface IRowsetScroll : IRowsetLocate { HRESULT GetApproximatePosition ( HCHAPTER hChapter, DBBKMARK cbBookmark, const BYTE *pBookmark, DBCOUNTITEM *pulPosition, DBCOUNTITEM *pcRows); HRESULT GetRowsAtRatio ( HWATCHREGION hReserved1, HCHAPTER hChapter, DBCOUNTITEM ulNumerator, DBCOUNTITEM ulDenominator, DBROWCOUNT cRows, DBCOUNTITEM *pcRowsObtained, HROW **prghRows); }; interface IRowsetUpdate : IRowsetChange { HRESULT GetOriginalData ( HROW hRow, HACCESSOR hAccessor, void * pData); HRESULT GetPendingRows ( HCHAPTER hReserved, DBPENDINGSTATUS dwRowStatus, DBCOUNTITEM *pcPendingRows, HROW **prgPendingRows, DBPENDINGSTATUS **prgPendingStatus); HRESULT GetRowStatus( HCHAPTER hChapter, DBCOUNTITEM cRows, const HROW rghRows[], DBPENDINGSTATUS rgPendingStatus[]); HRESULT Undo ( HCHAPTER hReserved, DBCOUNTITEM cRows, const HROW rghRows[], DBCOUNTITEM *pcRows, HROW **prgRows, DBROWSTATUS **prgRowStatus); HRESULT Update ( HCHAPTER hReserved, DBCOUNTITEM cRows, const HROW rghRows[], DBCOUNTITEM *pcRows, HROW **prgRows, DBROWSTATUS **prgRowStatus); }; interface IRowsetView { HRESULT CreateView ( IUnknown * pUnkOuter, REFIID riid, IUnknown ** ppView); HRESULT GetView ( HCHAPTER hChapter, REFIID riid, HCHAPTER * phChapterSource, IUnknown ** ppView); }; interface IScopedOperations { HRESULT Copy ( DBCOUNTITEM cRows, LPCOLESTR rgpwszSourceURLs[ ], LPCOLESTR rgpwszDestURLs[ ], DBCOPYFLAGS dwCopyFlags, IAuthenticate *pAuthenticate, DBSTATUS rgdwStatus[ ], LPOLESTR rgpwszNewURLs[ ], OLECHAR **ppStringsBuffer); HRESULT Delete ( DBCOUNTITEM cRows, LPCOLESTR rgpwszURLs[ ], DBDELETEFLAGS dwDeleteFlags, DBSTATUS rgdwStatus[ ]); HRESULT Move ( DBCOUNTITEM cRows, LPCOLESTR rgpwszSourceURLs[ ], LPCOLESTR rgpwszDestURLs[ ], DBMOVEFLAGS dwMoveFlags, IAuthenticate *pAuthenticate, DBSTATUS rgdwStatus[ ], LPOLESTR rgpwszNewURLs[ ], OLECHAR **ppStringsBuffer); HRESULT OpenRowset ( IUnknown * pUnkOuter, DBID * pTableID, DBID * pIndexID, REFIID riid, ULONG cPropertySets, DBPROPSET rgPropertySets[ ], IUnknown ** ppRowset); }; interface ISessionProperties { HRESULT Read( void * pv, ULONG cb, ULONG * pcbRead); HRESULT Write( Void const * pv, ULONG cb, ULONG * pcbWritten); }; interface ISequentialStream { HRESULT GetProperties ( ULONG cPropertyIDSets, const DBPROPIDSET rgPropertyIDSets[], ULONG * pcPropertySets, DBPROPSET ** prgPropertySets); HRESULT SetProperties ( ULONG cPropertySets, DBPROPSET rgPropertySets[]); }; interface ISourcesRowset { HRESULT GetSourcesRowset( IUnknown pUnkOuter, REFIID riid, ULONG cPropertySets, DBPROPSET rgPropertySets[], IUnknown ** ppSourcesRowset); }; interface ISQLErrorInfo { HRESULT GetSQLInfo ( BSTR * pbstrSQLState, LONG * plNativeError); }; interface ISupportErrorInfo { HRESULT InterfaceSupportsErrorInfo ( REFIID riid); }; interface ITableCreation { HRESULT GetTableDefinition( DBID *pTableID, DBORDINAL *pcColumnDescs, DBCOLUMNDESC *prgColumnDescs[], ULONG *pcPropertySets, DBPROPSET *prgPropertySets[], ULONG *pcConstraintDescs, DBCONSTRAINTDESC *prgConstraintDescs[], OLECHAR **ppwszStringBuffer); }; interface ITableDefinition { HRESULT AddColumn( DBID * pTableID, DBCOLUMNDESC * pColumnDesc, DBID ** ppColumnID); HRESULT CreateTable( IUnknown *pUnkOuter, DBID *pTableID, DBORDINAL cColumnDescs, const DBCOLUMNDESC rgColumnDescs[], REFIID riid, ULONG cPropertySets, DBPROPSET rgPropertySets[], DBID **ppTableID, IUnknown **ppRowset); HRESULT DropColumn( DBID * pTableID, DBID * pColumnID); HRESULT DropTable ( DBID * pTableID); }; interface ITableDefinitionWithConstraints { HRESULT AddConstraint( DBID * pTableID, DBCONSTRAINTDESC * pConstraintDesc); HRESULT CreateTableWithConstraints( IUnknown *pUnkOuter, DBID *pTableID, DBORDINAL cColumnDescs, const DBCOLUMNDESC rgColumnDescs[], ULONG cConstraintDescs, DBCONSTRAINTDESC rgConstraintDescs[], REFIID riid, ULONG cPropertySets, DBPROPSET rgPropertySets[], DBID **ppTableID, IUnknown **ppRowset); HRESULT DropConstraint( DBID * pTableID, DBID * pConstraintID); }; interface ITransaction { HRESULT Abort( BOID * pboidReason, BOOL fRetaining, BOOL fAsync); HRESULT Commit( BOOL fRetaining, DWORD grfTC, DWORD grfRM); HRESULT GetTransactionInfo( XACTTRANSINFO * pInfo); }; interface ITransactionJoin { HRESULT GetOptionsObject ( ITransactionOptions ** ppOptions); HRESULT JoinTransaction ( IUnknown * punkTransactionCoord, ISOLEVEL isoLevel, ULONG isoFlags, ITransactionOptions * pOtherOptions); }; interface ITransactionLocal : ITransaction { HRESULT GetOptionsObject ( ITransactionOptions ** ppOptions); HRESULT StartTransaction ( ISOLEVEL isoLevel, ULONG isoFlags, ITransactionOptions * pOtherOptions, ULONG * pulTransactionLevel); }; interface ITransactionObject { HRESULT GetTransactionObject ( ULONG ulTransactionLevel, ITransaction ** ppTransactionObject); }; interface ITransactionOptions { HRESULT GetOptions( XACTOPT * pOptions); HRESULT SetOptions( XACTOPT * pOptions); }; interface IViewChapter { HRESULT GetSpecification ( REFIID riid, IUnknown ** ppRowset); HRESULT OpenViewChapter ( HCHAPTER hSource, HCHAPTER * phViewChapter); }; interface IViewFilter { HRESULT GetFilter ( HACCESSOR hAccessor, DBCOUNTITEM *pcRows, DBCOMPAREOP *pCompareOps[], void *pCriteriaData); HRESULT GetFilterBindings( DBCOUNTITEM *pcBindings, DBBINDING **prgBindings); HRESULT SetFilter ( HACCESSOR hAccessor, DBCOUNTITEM cRows, DBCOMPAREOP CompareOps[], void *pCriteriaData); }; interface IViewRowset { HRESULT GetSpecification ( REFIID riid, IUnknown ** ppObject); HRESULT OpenViewRowset ( IUnknown * pUnkOuter, REFIID riid, IUnknown ** ppRowset); }; interface IViewSort { HRESULT GetSortOrder ( DBORDINAL *pcColumns, DBORDINAL *prgColumns[], DBSORT *prgOrders[]); HRESULT SetSortOrder ( DBORDINAL cColumns, const DBORDINAL rgColumns[], const DBSORT rgOrders[]); };
1998-2001 Microsoft Corporation. All rights reserved.