| title | Retrieving Data as a Stream Using the SQLSRV Driver |
|---|---|
| description | Retrieving Data as a Stream Using the SQLSRV Driver |
| author | David-Engel |
| ms.author | davidengel |
| ms.date | 01/19/2017 |
| ms.service | sql |
| ms.subservice | connectivity |
| ms.topic | concept-article |
[!INCLUDEDriver_PHP_Download]
Retrieving data as a stream is only available in the SQLSRV driver of the [!INCLUDEssDriverPHP], and is not available in the PDO_SQLSRV driver.
The [!INCLUDEssDriverPHP] takes advantage of streams for retrieving large amounts of data. The topics in this section provide details about how to retrieve data as a stream.
The following steps summarize how to retrieve data as a stream:
-
Prepare and execute a Transact-SQL query with sqlsrv_query or the combination of sqlsrv_prepare/sqlsrv_execute.
-
Use sqlsrv_fetch to move to the next row in the result set.
-
Use sqlsrv_get_field to retrieve a field from the row. Specify that the data is to be retrieved as a stream by using SQLSRV_PHPTYPE_STREAM(<encoding>) as the third parameter in the function call. This table lists the constants used to specify encodings and their descriptions:
SQLSRV Constant Description SQLSRV_ENC_BINARY Data is returned as a raw byte stream from the server without performing encoding or translation. SQLSRV_ENC_CHAR Data is returned in 8-bit characters as specified in the code page of the Windows locale set on the system. Any multi-byte characters or characters that do not map into this code page are substituted with a single byte question mark (?) character.
Note
Some data types are returned as streams by default. For more information, see Default PHP Data Types.
| Topic | Description |
|---|---|
| Data Types with Stream Support Using the SQLSRV Driver | Lists the SQL Server data types that can be retrieved as streams. |
| How to: Retrieve Character Data as a Stream Using the SQLSRV Driver | Demonstrates how to retrieve character data as a stream. |
| How to: Retrieve Binary Data as a Stream Using the SQLSRV Driver | Demonstrates how to retrieve binary data as a stream. |