首頁 > 後端開發 > php教程 > 如何使用 MySQLi 高效率檢索單一資料庫記錄?

如何使用 MySQLi 高效率檢索單一資料庫記錄?

Patricia Arquette
發布: 2024-12-26 06:41:09
原創
944 人瀏覽過

How to Efficiently Retrieve a Single Database Record Using MySQLi?

使用 MySQLi 從資料庫擷取單一記錄

使用 MySQLi 可以實現從資料庫中擷取單一記錄,而無需使用循環。了解所涉及的語法和技術對於高效獲取數據至關重要。

取得關聯陣列行

要將整行作為關聯陣列檢索,請使用 fetch_assoc( ) 結果物件的方法。例如,要從「users」表中檢索一行:

<?php
// Connect to the database
$query = "SELECT * FROM users LIMIT 1";
$result = $conn->query($query);
$row = $result->fetch_assoc();

// Print the user's name
echo "Name: {$row['name']}";
?>
登入後複製

取得單一值

如果只需要特定值,則fetch_column( ) 方法(PHP 8.1或更高版本)可以使用。對於 8.1 之前的 PHP 版本,請使用 fetch_row()[0] 語法。例如,要擷取資料庫中的使用者數:

<?php
// Connect to the database
$query = "SELECT COUNT(*) FROM users";
$result = $conn->query($query);
$count = $result->fetch_column();

// Print the user count
echo "Total users: {$count}";
?>
登入後複製

使用帶有變數的預先準備語句

如果查詢中需要使用變量,則準備好必須使用語句來防止SQL注入。對於 PHP 8.2 或更高版本,使用 execute_query() 方法:

<?php
// Connect to the database
$query = "SELECT * FROM users WHERE id = ?";
$id = 1;
$row = $conn->execute_query($query, [$id])->fetch_assoc();

// Print the user's name
echo "Name: {$row['name']}";
?>
登入後複製

對於 8.2 之前的 PHP 版本,手動準備並執行語句:

<?php
// Connect to the database
$query = "SELECT * FROM users WHERE id = ?";
$stmt = $conn->prepare($query);
$stmt->bind_param('s', $id); // Bind the variable as a string
$id = 1;
$stmt->execute();
$result = $stmt->get_result();
$row = $result->fetch_assoc();

// Print the user's name
echo "Name: {$row['name']}";
?>
登入後複製

以上是如何使用 MySQLi 高效率檢索單一資料庫記錄?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板