PHP Conference Japan 2024

sqlsrv_send_stream_data

(沒有版本資訊,可能只在 Git 中)

sqlsrv_send_stream_data將資料從參數串流傳送到伺服器

說明

sqlsrv_send_stream_data(資源 $stmt): 布林值

將資料從參數串流傳送到伺服器。每次呼叫最多傳送 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