mirror of https://github.com/UMSKT/xpmgr.git
131 lines
5.9 KiB
Plaintext
131 lines
5.9 KiB
Plaintext
//-----------------------------------------------------------------------------
|
|
// File: dbsrst.idl
|
|
//
|
|
// Copyright: Copyright (c) Microsoft Corporation
|
|
//
|
|
// Contents: OLE DB interface definition
|
|
//
|
|
// Comments:
|
|
//
|
|
//-----------------------------------------------------------------------------
|
|
|
|
#include "idlmulti.h"
|
|
//
|
|
|
|
REMOTED_INTERFACE(0c733a7b-2a1c-11ce-ade5-00aa0044773d)
|
|
|
|
|
|
interface IDBSchemaRowset : IUnknown {
|
|
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_ASSERTIONS 3")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_CATALOGS 1")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_CHARACTER_SETS 3")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_COLLATIONS 3")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_COLUMNS 4")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_CHECK_CONSTRAINTS 3")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_CONSTRAINT_COLUMN_USAGE 4")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_CONSTRAINT_TABLE_USAGE 3")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_KEY_COLUMN_USAGE 7")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_REFERENTIAL_CONSTRAINTS 3")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_TABLE_CONSTRAINTS 7")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_COLUMN_DOMAIN_USAGE 4")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_INDEXES 5")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_OBJECT_ACTIONS 1")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_OBJECTS 1")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_COLUMN_PRIVILEGES 6")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_TABLE_PRIVILEGES 5")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_USAGE_PRIVILEGES 6")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_PROCEDURES 4")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_SCHEMATA 3")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_SQL_LANGUAGES 0")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_STATISTICS 3")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_TABLES 4")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_TRANSLATIONS 3")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_PROVIDER_TYPES 2")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_VIEWS 3")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_VIEW_COLUMN_USAGE 3")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_VIEW_TABLE_USAGE 3")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_PROCEDURE_PARAMETERS 4")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_FOREIGN_KEYS 6")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_PRIMARY_KEYS 3")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_PROCEDURE_COLUMNS 4")
|
|
|
|
// VERSION 2.0
|
|
cpp_quote("//@@@+ V2.0")
|
|
cpp_quote("#if( OLEDBVER >= 0x0200 )")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_TABLES_INFO 4")
|
|
cpp_quote("#define CRESTRICTIONS_MDSCHEMA_CUBES 3")
|
|
cpp_quote("#define CRESTRICTIONS_MDSCHEMA_DIMENSIONS 5")
|
|
cpp_quote("#define CRESTRICTIONS_MDSCHEMA_HIERARCHIES 6")
|
|
cpp_quote("#define CRESTRICTIONS_MDSCHEMA_LEVELS 7")
|
|
cpp_quote("#define CRESTRICTIONS_MDSCHEMA_MEASURES 5")
|
|
cpp_quote("#define CRESTRICTIONS_MDSCHEMA_PROPERTIES 9")
|
|
cpp_quote("#define CRESTRICTIONS_MDSCHEMA_MEMBERS 12")
|
|
cpp_quote("#endif // OLEDBVER >= 0x0200")
|
|
cpp_quote("//@@@- V2.0")
|
|
|
|
cpp_quote("//@@@+ V2.1")
|
|
cpp_quote("#if( OLEDBVER >= 0x0210 )")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_TRUSTEE 4")
|
|
cpp_quote("#endif // OLEDBVER >= 0x0210")
|
|
cpp_quote("//@@@- V2.1")
|
|
|
|
cpp_quote("//@@@+ V2.6")
|
|
cpp_quote("#if( OLEDBVER >= 0x0260 )")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_TABLE_STATISTICS 7")
|
|
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_CHECK_CONSTRAINTS_BY_TABLE 6")
|
|
cpp_quote("#define CRESTRICTIONS_MDSCHEMA_FUNCTIONS 4")
|
|
cpp_quote("#define CRESTRICTIONS_MDSCHEMA_ACTIONS 8")
|
|
cpp_quote("#define CRESTRICTIONS_MDSCHEMA_COMMANDS 5")
|
|
cpp_quote("#define CRESTRICTIONS_MDSCHEMA_SETS 5")
|
|
cpp_quote("#endif // OLEDBVER >= 0x0260")
|
|
cpp_quote("//@@@- V2.6")
|
|
|
|
[local]
|
|
HRESULT GetRowset(
|
|
[in, annotation("__in_opt")] IUnknown * pUnkOuter,
|
|
[in] REFGUID rguidSchema,
|
|
[in] ULONG cRestrictions,
|
|
[in, size_is(cRestrictions), annotation("__in_ecount_opt(cRestrictions)")]
|
|
const VARIANT rgRestrictions[],
|
|
[in, annotation("__in")] REFIID riid,
|
|
[in] ULONG cPropertySets,
|
|
[in, out, unique, size_is(cPropertySets), annotation("__inout_ecount_opt(cPropertySets)")]
|
|
DBPROPSET rgPropertySets[],
|
|
[out, iid_is(riid), annotation("__deref_out_opt")]
|
|
IUnknown ** ppRowset
|
|
);
|
|
|
|
[call_as(GetRowset)]
|
|
HRESULT RemoteGetRowset(
|
|
[in] IUnknown * pUnkOuter,
|
|
[in] REFGUID rguidSchema,
|
|
[in] ULONG cRestrictions,
|
|
[in, unique, size_is(cRestrictions)] const VARIANT * rgRestrictions,
|
|
[in] REFIID riid,
|
|
[in] ULONG cPropertySets,
|
|
[in, unique, size_is(cPropertySets)] DBPROPSET * rgPropertySets,
|
|
[out, iid_is(riid)] IUnknown ** ppRowset,
|
|
[in] ULONG cTotalProps,
|
|
[out, size_is(cTotalProps)] DBPROPSTATUS * rgPropStatus,
|
|
[out] IErrorInfo ** ppErrorInfoRem
|
|
);
|
|
|
|
[local]
|
|
HRESULT GetSchemas(
|
|
[in, out, annotation("__out")] ULONG * pcSchemas,
|
|
[out, size_is(,*pcSchemas), annotation("__deref_out_ecount_opt(*pcSchemas)")] GUID ** prgSchemas,
|
|
[out, size_is(,*pcSchemas), annotation("__deref_out_ecount_opt(*pcSchemas)")] ULONG ** prgRestrictionSupport
|
|
);
|
|
|
|
[call_as(GetSchemas)]
|
|
HRESULT RemoteGetSchemas(
|
|
[in, out] ULONG * pcSchemas,
|
|
[out, size_is(,*pcSchemas)] GUID ** prgSchemas,
|
|
[out, size_is(,*pcSchemas)] ULONG ** prgRestrictionSupport,
|
|
[out] IErrorInfo ** ppErrorInfoRem
|
|
);
|
|
|
|
}
|
|
|