次の方法で共有


OLE DB テーブル値パラメータの型のサポート (プロパティ)

このトピックでは、テーブル値パラメータの行セット オブジェクトに関連付けられている OLE DB プロパティおよびプロパティ セットについて説明します。

プロパティ

次に、テーブル値パラメータの行セット オブジェクトの IRowsetInfo::GetPropeties メソッドを使用して公開されるプロパティの一覧を示します。テーブル値パラメータの行セット プロパティはすべて読み取り専用であることに注意してください。したがって、IOpenRowset::OpenRowset メソッドまたは ITableDefinitionWithConstraints::CreateTableWithConstraints メソッドでプロパティを既定値以外の値に設定すると、エラーが発生し、オブジェクトが作成されません。

テーブル値パラメータの行セット オブジェクトで実装されていないプロパティは、次の一覧には含まれていません。すべてのプロパティの一覧は、Windows Data Access Components の OLE DB に関するドキュメントを参照してください。

プロパティ ID

DBPROP_ABORTPRESERVE

VARIANT_TRUE

DBPROP_ACCESSORDER

DBPROPVAL_AO_RANDOM

DBPROP_BLOCKINGSTORAGEOBJECTS

VARIANT_TRUE

DBPROP_BOOKMARKS

DBPROP_LITERALBOOKMARKS

R/W: 読み取り専用

既定値 : VARIANT_FALSE

説明 : ブックマークはテーブル値パラメータの行セット オブジェクトで利用できません。

DBPROP_BOOKMARKSKIPPED

VARIANT_FALSE

DBPROP_BOOKMARKTYPE

DBPROPVAL_BMK_NUMERIC

DBPROP_CANHOLDROWS

VARIANT_FALSE

DBPROP_CHANGEINSERTEDROWS

VARIANT_TRUE

DBPROP_COLUMNRESTRICT

VARIANT_FALSE

DBPROP_COMMANDTIMEOUT

0

DBPROP_COMMITPRESERVE

VARIANT_TRUE

DBPROP_DEFERRED

VARIANT_FALSE

DBPROP_DELAYSTORAGEOBJECTS

VARIANT_FALSE

DBPROP_IAccessor

DBPROP_IColumnsInfo

DBPROP_IConvertType

DBPROP_IRowset

DBPROP_IRowsetInfo

DBPROP_IColumnsRowset

VARIANT_TRUE

DBPROP_IConnectionPointContainer

DBPROP_IMultipleResults

DBPROP_IRowsetUpdate

DBPROP_IRowsetIdentity

DBPROP_IRowsetLocate

DBPROP_IRowsetScroll

DBPROP_IRowsetResynch

VARIANT_FALSE

DBPROP_IRowsetChange

VARIANT_TRUE

注 : テーブル値パラメータの行セット オブジェクトでは、IRowsetChange インターフェイスがサポートされます。

DBPROP_IRowsetChange を VARIANT_TRUE に設定して作成された行セットの動作は、即時更新モードの動作になります。

ただし、BLOB 列が ISequentialStream オブジェクトとしてバインドされる場合、コンシューマでは、テーブル値パラメータの行セット オブジェクトの有効期間中その列を保持する必要があります。

DBPROP_ISupportErrorInfo

VARIANT_TRUE

DBPROP_ISequentialStream

VARIANT_TRUE

DBPROP_IMMOBILEROWS

VARIANT_TRUE

DBPROP_LITERALIDENTITY

VARIANT_TRUE

DBPROP_LOCKMODE

DBPROPVAL_LM_NONE

DBPROP_MAXOPENROWS

0

DBPROP_MAXPENDINGROWS

0

DBPROP_MAXROWS

0

DBPROP_NOTIFICATIONPHASES

0

DBPROP_NOTIFYCOLUMNSET DBPROP_NOTIFYROWDELETE DBPROP_NOTIFYROWFIRSTCHANGE DBPROP_NOTIFYROWINSERT DBPROP_NOTIFYROWRESYNCH DBPROP_NOTIFYROWSETRELEASE DBPROP_NOTIFYROWSETFETCH-POSITIONCHANGE DBPROP_NOTIFYROWUNDOCHANGE DBPROP_NOTIFYROWUNDODELETE DBPROP_NOTIFYROWUNDOINSERT DBPROP_NOTIFYROWUPDATE

0

DBPROP_OTHERINSERT DBPROP_OTHERUPDATEDELETE

VARIANT_FALSE

DBPROP_OWNINSERT

DBPROP_OWNUPDATEDELETE

VARIANT_TRUE

DBPROP_QUICKRESTART

VARIANT_TRUE

DBPROP_REENTRANTEVENTS

VARIANT_FALSE

DBPROP_REMOVEDELETED

VARIANT_TRUE

DBPROP_RETURNPENDINGINSERTS

VARIANT_TRUE

DBPROP_ROWRESTRICT

VARIANT_FALSE

DBPROP_ROWTHREADMODEL

DBPROPVAL_RT_FREETHREAD

DBPROP_SERVERCURSOR

VARIANT_FALSE

DBPROP_SERVERDATAONINSERT

VARIANT_FALSE

DBPROP_STRONGIDENTITY

VARIANT_TRUE

DBPROP_TRANSACTEDOBJECT

VARIANT_FALSE

DBPROP_UNIQUEROWS

VARIANT_FALSE

DBPROP_UPDATABILITY

DBPROPVAL_UP_CHANGE | DBPROPVAL_UP_DELETE | DBPROPVAL_UP_INSERT

プロパティ セット

次のプロパティ セットでは、テーブル値パラメータがサポートされます。

DBPROPSET_SQLSERVERCOLUMN

このプロパティは、テーブル値パラメータの行セット オブジェクトを作成するプロセスでコンシューマによって使用されます。このプロセスでは、必要に応じて、DBCOLUMNDESC 構造体から各列の ITableDefinitionWithConstraints::CreateTableWithConstraints を使用します。

プロパティ ID

プロパティ値

SSPROP_COL_COMPUTED

R/W: 読み取り/書き込み

既定値 : VARIANT_FALSE

型 : VT_BOOL

説明 : VARIANT_TRUE に設定された場合、その列が計算列であることを示します。VARIANT_FALSE に設定された場合は、その列が計算列ではないことを示します。

DBPROPSET_SQLSERVERPARAMETER

これらのプロパティは、ISSCommandWithParamters::GetParameterProperties の呼び出しでテーブル値パラメータの型情報の検出中にコンシューマによって読み取られ、ISSCommandWithParameters::SetParameterProperties を使用してテーブル値パラメータに関する特定のプロパティの設定中にコンシューマによって設定されます。

次の表に、これらのプロパティの詳細を示します。

プロパティ ID

プロパティ値

SSPROP_PARAM_TYPE_TYPENAME

R/W: 読み取り/書き込み

既定値 : VT_EMPTY

型 : VT_BSTR

説明 : コンシューマは、このプロパティを使用して、テーブル値パラメータの型名を取得または設定します。

このプロパティは、CLR ユーザー定義型と共に使用することもできます。

このプロパティは、テーブル値パラメータのテーブルの型名を指定するように、必要に応じて指定できます (ODBC の呼び出し構文のコマンドの場合)。このプロパティは、パラメータ化されたアドホック SQL クエリに必要です。

SSPROP_PARAM_TYPE_SCHEMANAME

R/W: 読み取り/書き込み

既定値 : VT_EMPTY

型 : VT_BSTR

説明 : コンシューマは、このプロパティを使用して、テーブル値パラメータの型のスキーマ名を取得または設定します。

このプロパティは、CLR ユーザー定義型と共に使用することもできます。

SSPROP_PARAM_TYPE_CATALOGNAME

R/W: 読み取り専用

既定値 : VT_EMPTY

型 : VT_BSTR

説明 : コンシューマは、このプロパティを使用して、テーブル値パラメータの型のカタログ名を取得します。

このプロパティは、CLR ユーザー定義型と共に使用することもできます。このプロパティを設定するとエラーになります。ユーザー定義テーブル型は、それを使用するテーブル値パラメータと同じデータベースに内にある必要があります。

SSPROP_PARAM_TABLE_DEFAULT_COLUMNS

R/W: 読み取り/書き込み

既定値 : VT_EMPTY

型 : VT_UI2 | VT_ARRAY

説明 : コンシューマは、このプロパティを使用して、既定値として扱う、行セット内の列セットを指定します。これらの列の値は送信されません。プロバイダは、コンシューマの行セット オブジェクトからデータをフェッチしている間、このような列のバインドを必要としません。

配列の各要素は、行セット オブジェクト内の列の序数である必要があります。序数が無効な場合、コマンドの実行時にエラーが発生します。

SSPROP_PARAM_TABLE_COLUMN_ORDER

R/W: 読み取り/書き込み

既定値 : VT_EMPTY

型 : VT_UI2 | VT_ARRAY

説明 : このプロパティは、列データの並べ替え順を示すヒントをサーバーに提供するためにコンシューマによって使用されます。プロバイダでは検証は行われず、提供された仕様にコンシューマが準拠していることが想定されます。サーバーでは、このプロパティを使用して最適化を実行します。

各列の列順序情報は、配列内の要素のペアで表されます。ペアの最初の要素は列数で、ペアの 2 番目の要素は、昇順の場合は 1、降順の場合は 2 になります。