MySQL PHP 查詢範例

最後更新: 23月2025
  • PHP 和 MySQL 是動態網頁開發的必備工具。
  • MySQL 查詢可讓您執行讀取、插入和更新資料等操作。
  • 使用安全措施來防止 SQL 注入至關重要。
  • 文件和實作是掌握 PHP 中的 MySQL 查詢的關鍵。
MySQL PHP 查詢

PHP 程式語言和 MySQL 資料庫管理系統是 Web 開發中強大且受歡迎的工具。 PHP 和 MySQL 的結合可讓您建立動態且功能齊全的 Web 應用程式。在本文中,我們將探討 PHP 中的 MySQL 查詢,並提供實際範例來說明如何與資料庫互動。我們將學習如何執行查詢、插入資料、更新記錄等。讓我們深入了解 PHP 中令人興奮的 MySQL 查詢世界!

PHP 中的 MySQL 查詢是什麼?

PHP 中的 MySQL 查詢是使用 PHP 程式語言與 MySQL 資料庫互動的指令或指令。這些查詢可讓您執行從資料庫讀取、插入、更新和刪除資料等操作。 PHP 提供了各種各樣的函數和方法來有效地執行 MySQL 查詢。有關更多信息,您可以查閱[MySQL 查詢和範例](https://informatecdigital.com/consultas-mysql-y-ejemplos/)。

準備環境:配置資料庫

在開始使用 PHP 中的 MySQL 查詢之前,您需要設定資料庫。以下是準備環境的一些基本步驟:

MySQL 安裝:要使用 MySQL,我們必須將其安裝到系統中。 MySQL 是一個開源的關聯式資料庫管理系統,可以從 MySQL 官方網站免費下載和安裝。

建立資料庫:安裝 MySQL 後,我們可以使用 phpMyAdmin 等管理工具建立新資料庫,或直接在 MySQL 控制台中使用 SQL 指令。

CREATE DATABASE nombre_basedatos;

建立表格:資料庫建立完成後,我們就可以在其中建立表格。表是一種包含行和列的結構,用於儲存資料。

CREATE TABLE nombre_tabla (
  columna1 tipo_dato,
  columna2 tipo_dato,
  ...
);

現在我們已經設定好了環境,我們可以開始在 PHP 中使用 MySQL 查詢。您可以了解有關[在 MySQL 中建立表格、範例和說明](https://informatecdigital.com/crear-tablas-en-mysql-ejemplos-y-explicaciones/)的更多資訊。

使用 PHP 執行 MySQL 查詢

連接資料庫

在進行任何查詢之前,我們必須使用正確的憑證建立與資料庫的連線。 PHP 提供函數 mysqli_connect() 建立連線。我們來看一個例子:

<?php
$host = 'localhost';
$usuario = 'nombre_usuario';
$contrasena = 'contrasena_usuario';
$basedatos = 'nombre_basedatos';

$conexion = mysqli_connect($host, $usuario, $contrasena, $basedatos);

if (!$conexion) {
    die('Error al conectar: ' . mysqli_connect_error());
}

echo 'Conexión exitosa!';
?>

在上面的例子中,我們被替換了 'localhost' 與資料庫所在的主機, 'nombre_usuario' y 'contrasena_usuario' 使用存取憑證,以及 'nombre_basedatos' 使用我們要連接的資料庫的名稱。如果連線成功,則會顯示「連線成功!」訊息。

選擇查詢

SELECT 查詢用於從資料庫中檢索資料。我們可以指定列和條件來過濾結果。讓我們來看看一個如何在 PHP 中執行 SELECT 查詢的範例:

<?php
$consulta = "SELECT columna1, columna2 FROM nombre_tabla WHERE condicion";

$resultado = mysqli_query($conexion, $consulta);

if ($resultado) {
    while ($fila = mysqli_fetch_assoc($resultado)) {
        echo $fila['columna1'] . ' - ' . $fila['columna2'] . '<br>';
    }
} else {
    echo 'Error en la consulta: ' . mysqli_error($conexion);
}

mysqli_free_result($resultado);
mysqli_close($conexion);
?>

在上面的例子中,我們被替換了 'columna1' y 'columna2' 帶有我們想要恢復的列的名稱, 'nombre_tabla' 我們要在其中執行查詢的表的名稱,以及 'condicion' 使用可選條件來過濾結果。如果查詢成功,結果將顯示在瀏覽器中。如果您想深入了解查詢條件,請參閱 [MySQL 中的 where](https://informatecdigital.com/where-en-mysql/)。

  MongoDB 簡介:它是什麼以及為什麼要使用它?

插入查詢

INSERT 查詢用於將新記錄插入資料庫表。我們可以為每一列指定我們想要插入的值。讓我們來看看一個如何在 PHP 中執行 INSERT 查詢的範例:

<?php
$consulta = "INSERT INTO nombre_tabla (columna1, columna2) VALUES ('valor1', 'valor2')";

if (mysqli_query($conexion, $consulta)) {
    echo 'Registro insertado exitosamente!';
} else {
    echo 'Error en la consulta: ' . mysqli_error($conexion);
}

mysqli_close($conexion);
?>

在上面的例子中,我們被替換了 'nombre_tabla' 我們要插入記錄的表格的名稱, 'columna1' y 'columna2' 具有相應的列名,以及 'valor1' y 'valor2' 與我們想要插入的值。如果查詢成功則會提示「記錄插入成功!」。有關更複雜的範例,您可以訪問[MySQL 多表查詢和範例](https://informatecdigital.com/consultas-multitablas-mysql-ejemplos/)。

更新查詢

UPDATE 查詢用於更新資料庫表中的現有記錄。我們可以指定我們想要更新的值,以及條件來過濾要更新的記錄。讓我們來看一個如何在 PHP 中執行 UPDATE 查詢的範例:

<?php
$consulta = "UPDATE nombre_tabla SET columna1 = 'nuevo_valor' WHERE condicion";

if (mysqli_query($conexion, $consulta)) {
    echo 'Registro actualizado exitosamente!';
} else {
    echo 'Error en la consulta: ' . mysqli_error($conexion);
}

mysqli_close($conexion);
?>

在上面的例子中,我們被替換了 'nombre_tabla' 我們要執行更新的表格的名稱, 'columna1' 我們要更新的列的名稱, 'nuevo_valor' 替換為我們想要分配的新值, 'condicion' 使用可選條件來過濾要更新的記錄。若查詢成功則會顯示「記錄更新成功!」。有關 [MySQL 中的預存程序](https://informatecdigital.com/procedimientos-almacenados-en-mysql-una-guia-completa/) 的更多信息,您可以參考以下連結。

DELETE 查詢

DELETE 查詢用於從資料庫表中刪除記錄。我們可以指定條件來過濾要刪除的記錄。讓我們來看一個如何在 PHP 中執行 DELETE 查詢的範例:

<?php
$consulta = "DELETE FROM nombre_tabla WHERE condicion";

if (mysqli_query($conexion, $consulta)) {
    echo 'Registro eliminado exitosamente!';
} else {
    echo 'Error en la consulta: ' . mysqli_error($conexion);
}

mysqli_close($conexion);
?>

在上面的例子中,我們被替換了 'nombre_tabla' 替換為要從中刪除記錄的表的名稱,以及 'condicion' 使用可選條件來過濾要刪除的記錄。若查詢成功則會提示「記錄刪除成功!」。為了優化您的 SQL 程式碼,請考慮使用 [MySQL 中的視圖](https://informatecdigital.com/vistas-en-mysql-optimiza-tu-codigo-sql/)。

實例:PHP 中的 MySQL 查詢

現在我們已經介紹了 PHP 中 MySQL 查詢的基礎知識,讓我們來看一些實際的例子,以便更好地理解它們在 Web 開發中的使用方式。這些範例旨在說明常見的用例。

範例 1:顯示表格中的所有記錄

假設我們有一個名為「使用者」的表,其中包含「id」、「name」和「email」欄位。我們想要顯示表中的所有記錄。我們可以這樣做:

<?php
$consulta = "SELECT * FROM usuarios";

$resultado = mysqli_query($conexion, $consulta);

if ($resultado) {
    echo '<table>';
    echo '<tr><th>ID</th><th>Nombre</th><th>Correo</th></tr>';

    while ($fila = mysqli_fetch_assoc($resultado)) {
        echo '<tr>';
        echo '<td>' . $fila['id'] . '</td>';
        echo '<td>' . $fila['nombre'] . '</td>';
        echo '<td>' . $fila['correo'] . '</td>';
        echo '</tr>';
    }

    echo '</table>';
} else {
    echo 'Error en la consulta: ' . mysqli_error($conexion);
}

mysqli_free_result($resultado);
mysqli_close($conexion);
?>

在前面的範例中,我們在 SELECT 查詢中使用星號 (*) 從「使用者」表中選擇所有欄位。然後我們使用 while 循環來迭代結果並將其顯示在 HTML 表中。如果您需要更多有關如何在 MySQL 中使用「IF」函數的範例,您可能會對[帶有範例的 if-else MySQL](https://informatecdigital.com/if-else-mysql-con-ejemplos/) 感興趣。

  物件導向資料庫:特點和用途

範例 2:向表中插入新記錄

假設我們要在「users」表中插入一個新使用者。新使用者的 ID 為 1,姓名為“John Doe”,電子郵件地址為“ [email protected] ”。我們可以這樣做:

<?php
$consulta = "INSERT INTO usuarios (id, nombre, correo) VALUES (1, 'John Doe', '[email protected]')";

if (mysqli_query($conexion, $consulta)) {
    echo 'Registro insertado exitosamente!';
} else {
    echo 'Error en la consulta: ' . mysqli_error($conexion);
}

mysqli_close($conexion);
?>

在前面的範例中,我們為INSERT查詢中的“id”,“name”,“email”列提供了相應的值。如果查詢成功則會提示「記錄插入成功!」。此外,請考慮了解 [MySQL 使用者](https://informatecdigital.com/usuarios-en-mysql/),以便更好地管理資料。

範例 3:更新表中的現有記錄

假設我們要更新「使用者」表中使用者的姓名。我們想將 ID 為 1 的用戶的名字改為「Jane Doe」。我們可以這樣做:

<?php
$consulta = "UPDATE usuarios SET nombre = 'Jane Doe' WHERE id = 1";

if (mysqli_query($conexion, $consulta)) {
    echo 'Registro actualizado exitosamente!';
} else {
    echo 'Error en la consulta: ' . mysqli_error($conexion);
}

mysqli_close($conexion);
?>

在前面的範例中,我們使用了 WHERE 條件來指定要更新 ID 為 1 的記錄。有關更多信息,您可以查看[在 MySQL 中使用 HAVING](https://informatecdigital.com/uso-de-having-en-mysql/)。

範例 4:從表格中刪除記錄

假設我們想從「使用者」表中刪除一個使用者。我們要刪除 ID 為 1 的使用者。

<?php
$consulta = "DELETE FROM usuarios WHERE id = 1";

if (mysqli_query($conexion, $consulta)) {
    echo 'Registro eliminado exitosamente!';
} else {
    echo 'Error en la consulta: ' . mysqli_error($conexion);
}

mysqli_close($conexion);
?>

在上面的例子中,我們使用了WHERE條件來指定要刪除ID為1的記錄。不要忘記,學習 [MySQL 中的嵌套查詢](https://informatecdigital.com/consultas-anidadas-en-mysql-ejemplos-y-explicacion/) 也非常有用。

常問問題

MySQL 和 PHP 有什麼差別?

MySQL 是一種關聯式資料庫管理系統,而 PHP 是一種程式語言。 MySQL 用於儲存和檢索數據,而 PHP 用於處理和操作數據。 MySQL 和 PHP 的組合在 Web 開發中很常見,用於建立動態且功能齊全的應用程式。但是,如果您對更深入的分析感興趣,可以查看[MySQL 優點和缺點,完整分析](https://informatecdigital.com/mysql-ventajas-y-desventajas-un-analisis-completo/)。

為什麼在 PHP 中轉義 MySQL 查詢中的資料很重要?

在 PHP 中轉義 MySQL 查詢中的資料以防止 SQL 注入攻擊非常重要。 SQL 注入是駭客用來操縱傳送到資料庫的 SQL 查詢的一種技術。透過轉義數據,我們可以確保特殊字元和 SQL 語句不會被惡意解釋。如果您想閱讀有關該主題的更多信息,請查看[MySQL 的最佳 Web 資源,完整指南](https://informatecdigital.com/los-mejores-recursos-web-para-mysql-una-guia-completa/)。

  面向文件的資料庫的優勢

除了 MySQL 和 PHP 之外,還有其他與資料庫互動的替代方案嗎?

是的,除了 MySQL 和 PHP 之外,還有其他與資料庫互動的替代方案。一些流行的替代方案是 PostgreSQL、SQLite 和 MongoDB 作為資料庫管理系統,以及 Python、Ruby 和 Java 作為程式語言。資料庫和程式語言組合的選擇取決於專案要求和開發人員的偏好。如果您正在尋找有關替代方案的更多詳細信息,可以閱讀有關 [SQL Server 的替代方案](https://informatecdigital.com/alternativas-a-sql-server/)。

在 PHP 中執行 MySQL 查詢的最佳實務是什麼?

使用 PHP 執行 MySQL 查詢的一些最佳實務包括:

  1. 使用準備好的語句或參數化查詢來防止 SQL 注入。
  2. 使用以下函數正確轉義數據 mysqli_real_escape_string() 或準備好的語句。
  3. 在執行查詢之前驗證並過濾輸入資料。
  4. 使用適當的資料庫角色和權限來限制未經授權的存取。
  5. 使用以下方式執行查詢後關閉與資料庫的連接 mysqli_close().

之間有什麼區別 mysqli_query() y mysqli_real_query() 在 PHP 中?

mysqli_query() 它用於對資料庫執行單一 SQL 查詢並在成功時傳回結果。另一方面, mysqli_real_query() 它用於對資料庫執行以分號分隔的多個 SQL 查詢。它不傳回結果,僅驗證查詢的有效性。

如何才能了解更多關於 PHP 中 MySQL 查詢的資訊?

要了解有關 PHP 中的 MySQL 查詢的更多信息,可以查閱官方 PHP 和 MySQL 文件。您也可以瀏覽專門使用 PHP 和 MySQL 進行 Web 開發的線上教學課程、課程和書籍。透過現實生活中的範例和專案進行練習也是獲得 PHP 中 MySQL 查詢經驗和技能的好方法。如果你正在尋找 MySQL 中函數的完整指南,我推薦[在 MySQL 中建立函數](https://informatecdigital.com/crear-funciones-en-mysql/)。

結論

在本文中,我們探討了 PHP 中的 MySQL 查詢,並提供了實際範例來說明如何使用 PHP 與 MySQL 資料庫互動。我們已經介紹了 SELECT、INSERT、UPDATE 和 DELETE 查詢,以及在 PHP 中設定資料庫和建立連線的基本步驟。我們希望本指南能為您提供使用 PHP 中的 MySQL 查詢以及建立動態且功能性的 Web 應用程式所需的知識。繼續在您的下一個專案中充分利用 PHP 和 MySQL 的潛力!

MySQL 查詢範例
相關文章:
MySQL 查詢和範例