FILESTREAM のサポート (OLE DB)

SQL Server 2008 と SQL Server Native Client 10.0 以降では、強化された FILESTREAM 機能が OLE DB でサポートされています。この機能の詳細については、「FILESTREAM のサポート」を参照してください。

アプリケーションで 2 GB より大きい varbinary(max) 値を送受信するには、パラメータと結果のバインドで DBTYPE_IUNKNOWN を使用します。パラメータの場合、プロバイダは、ISequentialStream と、ISequentialStream を返す結果のために、IUnknown::QueryInterface を呼び出す必要があります。 

OLE DB の場合は、ISequentialStream 値に関連するチェックが緩和されます。wType が DBBINDING 構造体の DBTYPE_IUNKNOWN の場合、dwPart から DBPART_LENGTH を省略するか、データの長さ (データ バッファ内のオフセット obLength のデータの長さ) を 0 に設定することによって、長さのチェックを無効にすることができます。この場合、プロバイダは値の長さをチェックせず、ストリームで利用可能なすべてのデータを要求し、返します。この変更は、SQL Server 2005 (以降の) サーバーに接続する場合に限り、すべてのラージ オブジェクト (LOB) 型と XML に適用されます。これにより、既存のアプリケーションや下位レベルのサーバーとの一貫性や下位互換性を維持しつつ、より柔軟な開発が可能になります。

この変更は、データを転送するすべてのインターフェイス (主に IRowset::GetDataICommand::Execute、および IRowsetFastLoad::InsertRow) に影響します。

関連項目

その他の技術情報