次の方法で共有


データ ソースのプロパティ (OLE DB)

SQL Server Native Client OLE DB プロバイダでは、データ ソースのプロパティが次のように実装されます。

プロパティ ID

説明

DBPROP_CURRENTCATALOG

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

既定値 : なし

説明 : DBPROP_CURRENTCATALOG の値により、SQL Server Native Client OLE DB プロバイダ セッションの現在のデータベースが報告されます。このプロパティ値を設定することは、Transact-SQL USE database ステートメントを使用して現在のデータベースを設定するのと同じ効果があります。

SQL Server 2005 以降のバージョンでは、データベース名を小文字で指定して sp_defaultdb を呼び出すと、大文字と小文字が混在する名前を使用してデータベースが作成されている場合でも、DBPROP_CURRENTCATALOG では名前が小文字で返されます。以前のバージョンの SQL Server では、大文字と小文字が混在する名前が DBPROP_CURRENTCATALOG によって返されます。

DBPROP_MULTIPLECONNECTIONS

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

既定値 : VARIANT_FALSE

説明 : 行セットを生成しないコマンドまたはサーバー カーソルではない行セットを生成するコマンドが接続で実行されているときに、ユーザーが別のコマンドを実行すると、DBPROP_MULTIPLECONNECTIONS が VARIANT_TRUE に設定されている場合は、新しいコマンドを実行するために新しい接続が作成されます。

DBPROP_MULTIPLECONNECTION が VARIANT_FALSE に設定されている場合、または接続でトランザクションがアクティブな場合は、別の接続は作成されません。DBPROP_MULTIPLECONNECTIONS が VARIANT_FALSE に設定されている場合は SQL Server Native Client OLE DB プロバイダから DB_E_OBJECTOPEN が返され、アクティブなトランザクションがある場合は E_FAIL が返されます。トランザクションとロックは、SQL Server によって接続ごとに管理されます。2 番目の接続を作成する場合は、個別の接続のコマンドではロックは共有されません。あるコマンドで別のコマンドがブロックされないようにするには、他のコマンドによって要求される行にロックを設定します。このことは、複数のセッションを作成する場合にも適用されます。

各セッションには個別の接続があります。

プロバイダ固有のプロパティ セット DBPROPSET_SQLSERVERDATASOURCE には、SQL Server Native Client OLE DB プロバイダにより、次の追加のデータ ソース プロパティが定義されます。

プロパティ ID

説明

SSPROP_ENABLEFASTLOAD

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

既定値 : VARIANT_FALSE

説明 : メモリからの一括コピーを有効にするには、SSPROP_ENABLEFASTLOAD プロパティを VARIANT_TRUE に設定する必要があります。このプロパティをデータ ソースで設定すると、新しく作成されたセッションを使用して、コンシューマから IRowsetFastLoad インターフェイスにアクセスできます。

このプロパティを VARIANT_TRUE に設定している場合、IID_IRowsetFastLoad インターフェイスを要求するか、SSPROP_IRowsetFastLoad を VARIANT_TRUE に設定すると、IOpenRowset::OpenRowset を介して IRowsetFastLoad インターフェイスが使用可能になります。

SSPROP_ENABLEBULKCOPY

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

既定値 : VARIANT_FALSE

説明 : ファイルからの一括コピーを有効にするには、SSPROP_ENABLEBULKCOPY プロパティを VARIANT_TRUE に設定する必要があります。データ ソースにこのプロパティを設定すると、コンシューマから IBCPSession インターフェイスにセッションと同じレベルでアクセスできるようになります。

また、SSPROP_IRowsetFastLoad を VARIANT_TRUE に設定する必要があります。