IDBSchemaRowsetImpl::SetRestrictions
特定のスキーマ行セットについてサポートする制限を指定します。
void SetRestrictions(
ULONG cRestrictions,
GUID* /* rguidSchema */,
ULONG* rgRestrictions
);
パラメーター
cRestrictions
[入力] rgRestrictions 配列の制限の数および rguidSchema 配列の GUID の数。rguidSchema
[入力] 制限をフェッチするスキーマ行セットの GUID の配列。 配列の各要素は、1 つのスキーマ行セットの GUID (DBSCHEMA_TABLES など) を保持します。rgRestrictions
[入力] 設定する長さ cRestrictions の制限値の配列。 各要素は、GUID によって識別されるスキーマ行セットの制限に対応します。 スキーマ行セットがプロバイダーによってサポートされていない場合、その要素は 0 に設定されます。 それ以外の場合、ULONG 値は、スキーマ行セットでサポートされている制限を表すビット マスクを保持します。 特定のスキーマ行セットに対応している制限の種類については、Windows SDK の『OLE DB Programmer's Reference』で、「IDBSchemaRowset」にあるスキーマ行セット GUID の表を参照してください。
解説
IDBSchemaRowset オブジェクトは SetRestrictions を呼び出して、特定のスキーマ行セットでサポートする制限を判断します。SetRestrictions は、アップキャストされたポインターを通じて GetSchemas によって呼び出されます。 制約により、コンシューマーは一致する行だけをフェッチできます。たとえば、テーブル "MyTable" 内のすべての列を検索します。 制限は省略可能であり、制限がサポートされていない場合は (既定)、常にすべてのデータが返されます。
メソッドの既定の実装では、rgRestrictions 配列の要素が 0 に設定されます。 既定以外の制限を設定する場合は、セッション クラスで既定値をオーバーライドします。
スキーマ行セットのサポートの実装については、「スキーマ行セットのサポート」を参照してください。
スキーマ行セットをサポートするプロバイダーの例については、UpdatePV サンプルを参照してください。
スキーマ行セットの詳細については、Windows SDK の『OLE DB Programmer's Reference』の「IDBSchemaRowset」を参照してください。
必要条件
**ヘッダー:**atldb.h
参照
処理手順
UpdatePV サンプル:更新可能な OLE DB プロバイダを実装します。