Rychlý start: Použití PHP k připojení a dotazování dat ve službě Azure Database for MySQL

PLATÍ PRO: Jednoúčelový server Azure Database for MySQL

Důležité

Jednoúčelový server Azure Database for MySQL je na cestě vyřazení. Důrazně doporučujeme upgradovat na flexibilní server Azure Database for MySQL. Další informace o migraci na flexibilní server Azure Database for MySQL najdete v tématu Co se děje s jednoúčelovým serverem Azure Database for MySQL?

Tento rychlý start ukazuje, jak se připojit ke službě Azure Database for MySQL pomocí aplikace v PHP. Ukazuje, jak pomocí příkazů jazyka SQL dotazovat, vkládat, aktualizovat a odstraňovat data v databázi.

Požadavky

Pro účely tohoto rychlého startu potřebujete:

Poznámka:

Ke správě připojení a dotazování serveru v tomto rychlém startu používáme knihovnu MySQLi .

Získání informací o připojení

Informace o připojení k databázovému serveru můžete získat z webu Azure Portal pomocí následujícího postupu:

  1. Přihlaste se k webu Azure Portal.
  2. Přejděte na stránku Azure Database for MySQL. Můžete vyhledat a vybrat servery Azure Database for MySQL.
  3. Vyberte server MySQL (například mydemoserver).
  4. Na stránce Přehled zkopírujte plně kvalifikovaný název serveru vedle názvu serveru a uživatelské jméno správce vedle přihlašovacího jména správce serveru. Pokud chcete zkopírovat název serveru nebo název hostitele, najeďte myší na něj a vyberte ikonu Kopírovat .

Důležité

  • Pokud jste heslo zapomněli, můžete heslo resetovat.
  • Nahraďte parametry hostitele, uživatelského jména, hesla a db_name vlastními hodnotami**

Krok 1: Připojení k serveru

Protokol SSL je ve výchozím nastavení povolený. Možná budete muset stáhnout certifikát SSL DigiCertGlobalRootG2 pro připojení z místního prostředí. Tento kód volá:

  • mysqli_init k inicializaci mySQLi.
  • mysqli_ssl_set odkazovat na cestu k certifikátu SSL. To se vyžaduje pro vaše místní prostředí, ale nevyžaduje se pro webové aplikace služby App Service nebo virtuální počítače Azure.
  • mysqli_real_connect pro připojení k MySQL.
  • mysqli_close připojení zavřete.
$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());
}

Krok 2: Vytvoření tabulky

Připojte se pomocí následujícího kódu. Tento kód volá:

  • mysqli_query spuštění dotazu.
// 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");
}

Krok 3: Vložení dat

Pomocí následujícího kódu vložte data pomocí příkazu INSERT SQL. Tento kód používá metody:

  • mysqli_prepare vytvoření připraveného příkazu insert
  • mysqli_stmt_bind_param vytvořit vazbu parametrů pro každou vloženou hodnotu sloupce.
  • mysqli_stmt_execute
  • mysqli_stmt_close zavřít příkaz pomocí metody
//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);
}

Krok 4: Čtení dat

Pomocí následujícího kódu můžete číst data pomocí příkazu SELECT SQL. Kód používá metodu:

  • mysqli_query spuštění dotazu SELECT
  • mysqli_fetch_assoc načtení výsledných řádků.
//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);
 }

Krok 5: Odstranění dat

Pomocí následujícího kódu odstraňte řádky pomocí příkazu DELETE SQL. Kód používá metody:

  • mysqli_prepare vytvoření připraveného příkazu delete
  • mysqli_stmt_bind_param sváže parametry.
  • mysqli_stmt_execute spustí připravený příkaz delete.
  • mysqli_stmt_close příkaz zavře.
//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);
}

Vyčištění prostředků

Pokud chcete vyčistit všechny prostředky použité během tohoto rychlého startu, odstraňte skupinu prostředků pomocí následujícího příkazu:

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

Další kroky