sqlsrv_send_stream_data

(没有版本信息可用,可能只在 Git 中)

sqlsrv_send_stream_data将数据从参数流发送到服务器

说明

sqlsrv_send_stream_data(resource $stmt): bool

将数据从参数流发送到服务器。每次调用最多发送 8 KB 的数据。

参数

stmt

sqlsrv_query()sqlsrv_execute() 返回的语句资源。

返回值

如果还有更多数据要发送,则返回 true;如果没有更多数据要发送,则返回 false

示例

示例 #1 sqlsrv_send_stream_data() 示例

<?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";

// 将参数数据作为流打开并将其放入 $params 数组中。
$data = fopen( "data://text/plain,[ 这里有很长的内容。 ]", "r");
$params = array( &$data);

// 准备语句。使用 $options 数组关闭默认行为,该行为是在查询执行时发送所有流数据。
$options = array("SendStreamParamsAtExec"=>0);
$stmt = sqlsrv_prepare( $conn, $sql, $params, $options);

sqlsrv_execute( $stmt);

// 每次调用 sqlsrv_send_stream_data 时向服务器发送最多 8K 的参数数据。
$i = 1;
while(
sqlsrv_send_stream_data( $stmt)) {
$i++;
}
echo
"$i 次调用被执行.";
?>

参见

添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top