DBPROPSET_MSIDXS_ROWSETEXT

Extends properties defined for the Rowset APIs.

#define DBPROPSET_MSIDXS_ROWSETEXT \
    { 0xaa6ee6b0, 0xe828, 0x11d0, \
        { 0xb2, 0x3e, 0x00, 0xaa, 0x00, 0x47, 0xfc, 0x01 } }

The DBPROPSET_MSIDXS_ROWSETEXT property set contains the following property constants:

MSIDXSPROP_ROWSETQUERYSTATUS

Property ID 2. Query status for the rowset. The STAT_* constants indicate the execution and reliability status.

MSIDXSPROP_COMMAND_LOCALE_STRING

Property ID 3. Locale string that represents the language and locale setting to use for this rowset.

MSIDXSPROP_QUERY_RESTRICTION

Property ID 4. The query string associated with this rowset.

MSIDXSPROP_PARSE_TREE

Property ID 5.

MSIDXSPROP_MAX_RANK

Property ID 6.

MSIDXSPROP_RESULTS_FOUND

Property ID 7.

MSIDXSPROP_WHEREID

Property ID 8.

MSIDXSPROP_SERVER_VERSION

New for Windows 7. Property ID 9. The server version.

MSIDXSPROP_SERVER_WINVER_MAJOR

Property ID 10.

MSIDXSPROP_SERVER_WINVER_MINOR

Property ID 11.

MSIDXSPROP_SERVER_NLSVERSION

Property ID 12.

MSIDXSPROP_SERVER_NLSVER_DEFINED

Property ID 13.

MSIDXSPROP_SAME_SORTORDER_USED

Property ID 14.

Remarks

To query MSIDXSPROP_SERVER_VERSION, it is necessary to issue the dummy query to server, such as the following example.

SELECT top 1 workid from servername.systemindex

After the rowset has been returned, call IUnknown::QueryInterface for the capabilities of the rowset and then call IRowsetInfo::GetProperties for the new property (MSIDXSPROP_SERVER_VERSION). The property has a type of VT_I4 and can be one of the following values:

#define CI_VERSION_WDS30 0x102 // 258

#define CI_VERSION_WDS40 0x109 // 265

#define CI_VERSION_WIN70 0x700 // 1792

Once the value is known, the client can form a query which is supported by the server and issue a real query.

DBPROPSET_MSIDXS_ROWSETEXT is declared in ntquery.h.