SqlFileStream クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
バイトのシーケンスとして FILESTREAM 列属性に格納されている SQL Server のデータを公開します。
public ref class SqlFileStream sealed : System::IO::Stream
public sealed class SqlFileStream : System.IO.Stream
type SqlFileStream = class
inherit Stream
Public NotInheritable Class SqlFileStream
Inherits Stream
- 継承
-
SqlFileStream
注釈
クラスはSqlFileStream、SQL Server 2008 データベースの FILESTREAM 属性と共に格納されたデータを操作varbinary(max)
するために使用されます。 FILESTREAM データの操作に使用SqlFileStreamするには、.NET Framework 3.5 SP1 (またはそれ以降) をインストールする必要があります。
列に varbinary(max)
FILESTREAM 属性を指定すると、SQL Serverはデータベース ファイルではなくローカル NTFS ファイル システムにデータを格納します。 Transact-SQL ステートメントはサーバー内のデータ操作機能を提供し、Win32 ファイル システム インターフェイスはデータへのストリーミング アクセスを提供します。
注意
FILESTREAM 列に格納されている個々のファイルを NTFS ファイル システムから直接開くことはできません。 FILESTREAM データのストリーミングは、SQL Server トランザクションのコンテキストでのみ機能します。
クラスは SqlFileStream 、 クラスから Stream 派生します。これは、ファイルやメモリ ブロックなどの任意のデータ ソースからのバイト シーケンスの抽象化を表します。 FILESTREAM から読み取ることができるのは、ストリームからバイト配列などのデータ構造にデータを転送することです。 FILESTREAM に書き込むには、データ構造からストリームにデータを転送します。 ストリーム内でシークすることもできます。これにより、ストリーム内の現在の位置にあるデータのクエリと変更を行うことができます。
概念的なドキュメントとコード例については、「 FILESTREAM データ」を参照してください。
SQL Serverでの FILESTREAM データの設定と構成に関するドキュメントについては、「SQL Server 2008 オンライン ブックの FILESTREAM ストレージの設計と実装」を参照してください。
コンストラクター
SqlFileStream(String, Byte[], FileAccess) |
SqlFileStream クラスの新しいインスタンスを初期化します。 |
SqlFileStream(String, Byte[], FileAccess, FileOptions, Int64) |
SqlFileStream クラスの新しいインスタンスを初期化します。 |
プロパティ
CanRead |
現在のストリームが読み取りをサポートしているかどうかを示す値を取得します。 |
CanSeek |
現在のストリームがシークをサポートしているかどうかを示す値を取得します。 |
CanTimeout |
現在のストリームがタイム アウトになる可能性があるかどうかを示す値を取得します。 |
CanWrite |
現在のストリームが書き込みをサポートしているかどうかを示す値を取得します。 |
Length |
バイト単位の現在のストリームの長さを示す値を取得します。 |
Name |
コンストラクターに渡される SqlFileStream の論理パスを取得します。 |
Position |
現在のストリーム内の位置を取得または設定します。 |
ReadTimeout |
ストリームがタイムアウト前に読み取りを試みる期間を決定する値 (ミリ秒単位) を取得または設定します。 |
TransactionContext |
この SqlFileStream オブジェクトのトランザクション コンテキストを取得または設定します。 |
WriteTimeout |
ストリームがタイムアウト前に書き込みを試行する期間を決定する値 (ミリ秒単位) を取得または設定します。 |
メソッド
BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) |
非同期の読み込み動作を開始します。 |
BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) |
非同期の書き込み操作を開始します。 |
EndRead(IAsyncResult) |
保留中の非同期読み取りが完了するまで待機します。 |
EndWrite(IAsyncResult) |
非同期書き込み操作を終了します。 |
Finalize() |
SqlFileStream クラス オブジェクトのデストラクター。 |
Flush() |
このストリームに対応するすべてのバッファーをクリアし、バッファー内のデータを基になるデバイスに書き込みます。 |
Read(Byte[], Int32, Int32) |
現在のストリームからバイト シーケンスを読み取り、読み取ったバイト数だけストリーム内の位置を進めます。 |
ReadByte() |
ストリームから 1 バイトを読み取り、ストリーム内の位置を 1 バイト進めます。ストリームの末尾の場合は -1 を返します。 |
Seek(Int64, SeekOrigin) |
現在のストリーム内の位置を設定します。 |
SetLength(Int64) |
現在のストリームの長さを設定します。 |
Write(Byte[], Int32, Int32) |
現在のストリームにバイト シーケンスを書き込み、書き込んだバイト数だけストリーム内の現在位置を進めます。 |
WriteByte(Byte) |
ストリームの現在位置にバイトを書き込み、ストリームの位置を 1 バイトだけ進めます。 |