# sqlsrv_send_stream_data

(No version information available, might only be in Git)

sqlsrv_send_stream_data — Sends data from parameter streams to the server

### 说明

sqlsrv_send_stream_data ( resource `$stmt` ) : bool

Send data from parameter streams to the server. Up to 8 KB of data is sent with each call.

### 参数

`stmt`

  A statement resource returned by sqlsrv_query() or sqlsrv_execute().

### 返回值

Returns `TRUE` if there is more data to send and `FALSE` if there is not.

### 范例

Example #1 sqlsrv_send_stream_data() example

    <?php
    $serverName = "serverName\sqlexpress";
    $connectionInfo = array( "Database"=>"dbName", "UID"=>"username", "PWD"=>"password" );
    $conn = sqlsrv_connect( $serverName, $connectionInfo);
    if( $conn === false ) {
         die( print_r( sqlsrv_errors(), true));
    }

    $sql = "UPDATE Table_1 SET data = ( ?) WHERE id = 100";

    // Open parameter data as a stream and put it in the $params array.
    $data = fopen( "data://text/plain,[ Lengthy content here. ]", "r");
    $params = array( &$data);

    // Prepare the statement. Use the $options array to turn off the
    // default behavior, which is to send all stream data at the time of query
    // execution.
    $options = array("SendStreamParamsAtExec"=>0);
    $stmt = sqlsrv_prepare( $conn, $sql, $params, $options);

    sqlsrv_execute( $stmt);

    // Send up to 8K of parameter data to the server
    // with each call to sqlsrv_send_stream_data.
    $i = 1;
    while( sqlsrv_send_stream_data( $stmt)) {
          $i++;
    }
    echo "$i calls were made.";
    ?>

### 参见

- sqlsrv_prepare() - Prepares a query for execution
- sqlsrv_query() - Prepares and executes a query