函数名称:sqlsrv_send_stream_data()
适用版本:PHP 5.6.0 及以上
函数说明:sqlsrv_send_stream_data() 函数用于将流式数据发送到预备语句中的绑定参数。
语法:bool sqlsrv_send_stream_data( resource $stmt )
参数:
- $stmt:表示预备语句的资源。该资源必须由 sqlsrv_prepare() 或 sqlsrv_prepare() 返回。
返回值:如果成功发送了流式数据,则返回 true,否则返回 false。
示例:
// 连接到数据库
$serverName = "serverName\sqlexpress";
$connectionOptions = array(
"Database" => "dbName",
"Uid" => "username",
"PWD" => "password"
);
$conn = sqlsrv_connect($serverName, $connectionOptions);
// 准备SQL语句
$sql = "INSERT INTO myTable (id, data) VALUES (?, ?)";
$params = array(1, null);
$stmt = sqlsrv_prepare($conn, $sql, $params);
// 绑定流式数据到参数
$data = fopen("path/to/file.txt", "r");
if ($data) {
sqlsrv_send_stream_data($stmt, $data);
fclose($data);
}
// 执行预备语句
if (sqlsrv_execute($stmt)) {
echo "流式数据发送成功!";
} else {
echo "流式数据发送失败!";
}
// 清理资源
sqlsrv_free_stmt($stmt);
sqlsrv_close($conn);
以上示例演示了如何使用 sqlsrv_send_stream_data() 函数将流式数据发送到预备语句中的绑定参数。首先,我们建立数据库连接并准备好要执行的 SQL 语句。然后,我们绑定一个文件流到预备语句的参数,并使用 sqlsrv_send_stream_data() 函数发送流式数据。最后,我们执行预备语句并检查是否成功发送了流式数据。
请注意,示例中的 $serverName、$connectionOptions、$sql、$params、$data 变量需要根据实际情况进行替换。