分享方式:


快速入門:使用 PHP 來連線及查詢適用於 MySQL 的 Azure 資料庫中的資料

適用於: 適用於 MySQL 的 Azure 資料庫 - 單一伺服器

重要

適用於 MySQL 的 Azure 資料庫單一伺服器位於淘汰路徑上。 強烈建議您升級至適用於 MySQL 的 Azure 資料庫彈性伺服器。 如需移轉至適用於 MySQL 的 Azure 資料庫彈性伺服器的詳細資訊,請參閱適用於 MySQL 的 Azure 資料庫單一伺服器會發生什麼事?

本快速入門示範如何使用 PHP 應用程式來連線到 Azure Database for MySQL。 它會顯示如何使用 SQL 陳述式來查詢、插入、更新和刪除資料庫中的資料。

必要條件

在本快速入門中,您需要:

注意

在本快速入門中,我們使用 MySQLi 程式庫來管理連線及查詢伺服器。

取得連線資訊

您可以依照下列步驟,從 Azure 入口網站取得資料庫伺服器連線資訊:

  1. 登入 Azure 入口網站
  2. 瀏覽至 [適用於 MySQL 的 Azure 資料庫] 頁面。 您可以搜尋並選取 適用於 MySQL 的 Azure 資料庫 伺服器
  3. 選取您的 MySQL 伺服器 (例如 mydemoserver)。
  4. 在 [概觀] 頁面上,複製 [伺服器名稱] 旁的完整伺服器名稱,以及 [伺服器管理員登入名稱] 旁的管理使用者名稱。 若要複製伺服器名稱或主機名稱,請將滑鼠暫留在其上方,然後選取 [複製] 圖示。

重要

  • 如果您忘記密碼,可以重設密碼
  • 請將主機、使用者名稱、密碼db_name 參數取代為您自己的值**

步驟 1:連線到伺服器

依預設會啟用 SSL。 您可能需要下載 DigiCertGlobalRootG2 SSL 憑證,才能從本機環境連線。 此程式碼會呼叫:

  • mysqli_init,以初始化 MySQLi。
  • mysqli_ssl_set,以指向 SSL 憑證路徑。 這對於您的本機環境而言是必要的,但 App Service Web 應用程式或 Azure 虛擬機器則不需要。
  • mysqli_real_connect,以連線至 MySQL。
  • mysqli_close,以關閉連線。
$host = 'mydemoserver.mysql.database.azure.com';
$username = 'myadmin@mydemoserver';
$password = 'your_password';
$db_name = 'your_database';

//Initializes MySQLi
$conn = mysqli_init();

mysqli_ssl_set($conn,NULL,NULL, "/var/www/html/DigiCertGlobalRootG2.crt.pem", NULL, NULL);

// Establish the connection
mysqli_real_connect($conn, $host, $username, $password, $db_name, 3306, NULL, MYSQLI_CLIENT_SSL);

//If connection failed, show the error
if (mysqli_connect_errno())
{
    die('Failed to connect to MySQL: '.mysqli_connect_error());
}

步驟 2:建立資料表

使用下列程式碼進行連線。 此程式碼會呼叫:

// Run the create table query
if (mysqli_query($conn, '
CREATE TABLE Products (
`Id` INT NOT NULL AUTO_INCREMENT ,
`ProductName` VARCHAR(200) NOT NULL ,
`Color` VARCHAR(50) NOT NULL ,
`Price` DOUBLE NOT NULL ,
PRIMARY KEY (`Id`)
);
')) {
printf("Table created\n");
}

步驟 3:插入資料

使用下列程式碼搭配 INSERT SQL 陳述式來插入資料。 此程式碼會使用下列方法:

//Create an Insert prepared statement and run it
$product_name = 'BrandNewProduct';
$product_color = 'Blue';
$product_price = 15.5;
if ($stmt = mysqli_prepare($conn, "INSERT INTO Products (ProductName, Color, Price) VALUES (?, ?, ?)"))
{
    mysqli_stmt_bind_param($stmt, 'ssd', $product_name, $product_color, $product_price);
    mysqli_stmt_execute($stmt);
    printf("Insert: Affected %d rows\n", mysqli_stmt_affected_rows($stmt));
    mysqli_stmt_close($stmt);
}

步驟 4:讀取資料

使用下列程式碼搭配 SELECT SQL 陳述式來讀取資料。 此程式碼會使用下列方法:

//Run the Select query
printf("Reading data from table: \n");
$res = mysqli_query($conn, 'SELECT * FROM Products');
while ($row = mysqli_fetch_assoc($res))
 {
    var_dump($row);
 }

步驟 5:刪除資料

使用 DELETE SQL 陳述式,以使用下列程式碼刪除資料列。 此程式碼會使用下列方法:

//Run the Delete statement
$product_name = 'BrandNewProduct';
if ($stmt = mysqli_prepare($conn, "DELETE FROM Products WHERE ProductName = ?")) {
mysqli_stmt_bind_param($stmt, 's', $product_name);
mysqli_stmt_execute($stmt);
printf("Delete: Affected %d rows\n", mysqli_stmt_affected_rows($stmt));
mysqli_stmt_close($stmt);
}

清除資源

若要清除在此快速入門期間使用的所有資源,請使用下列命令刪除資源群組:

az group delete \
    --name $AZ_RESOURCE_GROUP \
    --yes

下一步