Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 10.0.1 » SQL Anywhere Server - Programming » SQL Anywhere OLE DB and ADO APIs

Setting up a Microsoft Linked Server using OLE DB Next Page

Supported OLE DB interfaces

The OLE DB API consists of a set of interfaces. The following table describes the support for each interface in the SQL Anywhere OLE DB driver.

Interface Purpose Limitations
IAccessor Define bindings between client memory and data store values. DBACCESSOR_PASSBYREF not supported. DBACCESSOR_OPTIMIZED not supported.



Alter tables, indexes, and columns. Not supported.
IChapteredRowset A chaptered rowset allows rows of a rowset to be accessed in separate chapters. Not supported. SQL Anywhere does not support chaptered rowsets.
IColumnsInfo Get simple information about the columns in a rowset. Not supported on Windows CE.
IColumnsRowset Get information about optional metadata columns in a rowset, and get a rowset of column metadata. Not supported on Windows CE.
ICommand Execute SQL commands. Does not support calling. IcommandProperties: GetProperties with DBPROPSET_PROPERTIESINERROR to find properties that could not have been set.
ICommandPersist Persist the state of a command object (but not any active rowsets). These persistent command objects can subsequently be enumerated using the PROCEDURES or VIEWS rowset. Not supported on Windows CE.
ICommandPrepare Prepare commands. Not supported on Windows CE.
ICommandProperties Set Rowset properties for rowsets created by a command. Most commonly used to specify the interfaces the rowset should support. Supported.
ICommandText Set the SQL command text for ICommand. Only the DBGUID_DEFAULT SQL dialect is supported.
IcommandWithParameters Set or get parameter information for a command.

No support for parameters stored as vectors of scalar values.

No support for BLOB parameters.

Not on CE.



Limited on CE.



Asynchronous processing.

Notify client of events in the asynchronous processing of data source initialization, populating rowsets, and so on.

Not supported.
IDBCreateCommand Create commands from a session. Supported.
IDBCreateSession Create a session from a data source object. Supported.
IDBDataSourceAdmin Create/destroy/modify data source objects, which are COM objects used by clients. This interface is not used to manage data stores (databases). Not supported.

Find information about keywords unique to this provider (that is, to find non-standard SQL keywords).

Also, find information about literals, special characters used in text matching queries, and other literal information.

Not supported on Windows CE.
IDBInitialize Initialize data source objects and enumerators. Not supported on Windows CE.
IDBProperties Manage properties on a data source object or enumerator. Not supported on Windows CE.


Get information about system tables, in a standard form (a rowset). Not supported on Windows CE.




ActiveX error object support. Not supported on Windows CE.
IGetDataSource Returns an interface pointer to the session's data source object. Supported.
IIndexDefinition Create or drop indexes in the data store. Not supported.
IMultipleResults Retrieve multiple results (rowsets or row counts) from a command. Supported.
IOpenRowset Non-SQL way to access a database table by its name.


Opening a table by its name is supported, not by a GUID.
IParentRowset Access chaptered/hierarchical rowsets. Not supported.
IRowset Access rowsets. Supported.

Allow changes to rowset data, reflected back to the data store.

InsertRow/SetData for BLOBs are not implemented.

Not supported on Windows CE.
IRowsetChapterMember Access chaptered/hierarchical rowsets. Not supported.
IRowsetCurrentIndex Dynamically change the index for a rowset. Not supported.
IRowsetFind Find a row within a rowset matching a specified value. Not supported.
IRowsetIdentity Compare row handles. Not supported.
IRowsetIndex Access database indexes. Not supported.
IRowsetInfo Find information about rowset properties or to find the object that created the rowset. Not supported on Windows CE.
IRowsetLocate Position on rows of a rowset, using bookmarks. Not supported on Windows CE.
IRowsetNotify Provides a COM callback interface for rowset events. Supported.
IRowsetRefresh Get the latest value of data that is visible to a transaction. Not supported.
IRowsetResynch Old OLEDB 1.x interface, superseded by IRowsetRefresh. Not supported.
IRowsetScroll Scroll through rowset to fetch row data. Not supported.
IRowsetUpdate Delay changes to rowset data until Update is called.


Not on CE.

IRowsetView Use views on an existing rowset. Not supported.
ISequentialStream Retrieve a BLOB column.

Supported for reading only.

No support for SetData with this interface.

Not on CE.

ISessionProperties Get session property information. Supported.
ISourcesRowset Get a rowset of data source objects and enumerators. Not supported on Windows CE.



ActiveX error object support. Optional on CE.



Create, drop, and alter tables, with constraints. Not supported on Windows CE.
ITransaction Commit or abort transactions.

Not all the flags are supported.

Not on CE.

ITransactionJoin Support distributed transactions.

Not all the flags are supported.

Not on CE.


Handle transactions on a session.

Not all the flags are supported.

Not supported on Windows CE.
ITransactionOptions Get or set options on a transaction. Not supported on Windows CE.
IViewChapter Work with views on an existing rowset, specifically to apply post-processing filters/sorting on rows. Not supported.
IViewFilter Restrict contents of a rowset to rows matching a set of conditions. Not supported.
IViewRowset Restrict contents of a rowset to rows matching a set of conditions, when opening a rowset. Not supported.
IViewSort Apply sort order to a view. Not supported.