函式名:cubrid_unbuffered_query()
適用版本:CUBRID PHP擴充套件版本 9.1.0 或以上
用法: cubrid_unbuffered_query ( string $query [, resource $conn_identifier ] ) : resource|false
引數:
- query:要執行的SQL查詢語句。
- conn_identifier(可選):連線識別符號,預設為最近一次使用cubrid_connect()函式返回的識別符號。
返回值: 成功時返回結果集的資源識別符號(類似於cubrid_query()函式);如果查詢失敗,則返回false。
說明: cubrid_unbuffered_query() 函式用於執行不帶緩衝的SQL查詢語句。與cubrid_query()不同,該函式在檢索結果時不會將整個結果集載入到記憶體中,而是逐行獲取結果,節省了記憶體的使用。
示例: 以下示例展示瞭如何使用cubrid_unbuffered_query()函式執行一個查詢,並逐行獲取結果集中的資料。
// 建立資料庫連線
$conn = cubrid_connect("localhost", 33000, "demodb", "dba", "");
if ($conn) {
// 執行查詢
$result = cubrid_unbuffered_query("SELECT * FROM users", $conn);
if ($result) {
// 逐行獲取結果集中的資料
while ($row = cubrid_fetch_assoc($result)) {
echo "ID: " . $row['id'] . ", Name: " . $row['name'] . "<br>";
}
// 釋放結果集資源
cubrid_close_request($result);
} else {
echo "查詢失敗!";
}
// 關閉資料庫連線
cubrid_disconnect($conn);
} else {
echo "連線資料庫失敗!";
}
在上述示例中,我們首先透過cubrid_connect()函式建立與資料庫的連線。然後,使用cubrid_unbuffered_query()函式執行一個查詢,查詢所有使用者的ID和名稱。隨後,使用cubrid_fetch_assoc()函式逐行獲取結果集中的資料,並在HTML頁面上顯示。最後,透過cubrid_close_request()函式釋放結果集資源,斷開與資料庫的連線。如果執行查詢或連線資料庫失敗,則分別輸出相應的錯誤資訊。