SQLSRV ドライバーを使用してデータをストリームとして取得する
ストリームとしてのデータの取得は、Microsoft SQL Server 用 Drivers for PHP の SQLSRV ドライバーでのみ使用でき、PDO_SQLSRV ドライバーでは使用できません。
Microsoft SQL Server 用 Drivers for PHP は、大量のデータを取得するためにストリームを利用します。 このセクションのトピックでは、データをストリームとして取得する方法について詳しく説明します。
次の手順に、データをストリームとして取得する方法をまとめています。
sqlsrv_query または sqlsrv_prepare/sqlsrv_execute の組み合わせで Transact-SQL クエリを準備して実行します。
sqlsrv_fetch を使用して、結果セットの次の行に移動します。
sqlsrv_get_field を使用して、行からフィールドを取得します。 関数呼び出しの 3 番目のパラメーターとして SQLSRV_PHPTYPE_STREAM(<encoding>) を使用して、データをストリームとして取得することを指定します。 次の表は、エンコーディングおよびそれらの記述を指定するために使用する定数を示しています。
SQLSRV 定数 説明 SQLSRV_ENC_BINARY データは、エンコードまたは変換されず、生のバイト ストリームとしてサーバーから返されます。 SQLSRV_ENC_CHAR データは、システムの Windows ロケール設定のコード ページで指定されている 8 ビット文字で返されます。 任意のマルチバイト文字またはこのコード ページにマップされていない文字は、1 バイトの疑問符 (?) 文字に置き換えられます。
Note
一部のデータ型は、既定ではストリームとして返されます。 詳細については、「 Default PHP Data Types」を参照してください。
このセクションの内容
トピック | 説明 |
---|---|
SQLSRV ドライバーを使用したストリームでのデータ型のサポート | ストリームとして取得できる SQL Server データ型を一覧表示します。 |
方法:SQLSRV ドライバーを使用して文字データをストリームとして取得する | 文字データをストリームとして取得する方法を説明します。 |
方法:SQLSRV ドライバーを使用してバイナリ データをストリームとして取得する | バイナリ データをストリームとして取得する方法を説明します。 |