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:
Účet Azure s aktivním předplatným. Vytvoření účtu zdarma
Vytvoření jednoúčelového serveru Azure Database for MySQL pomocí webu Azure Portal
nebo Azure CLI , pokud ho nemáte.Na základě toho, jestli používáte veřejný nebo privátní přístup, dokončete jednu z následujících akcí a povolte připojení.
Akce Metoda připojení Praktičtí průvodci Konfigurace pravidel brány firewall Veřejná Azure Portal
Rozhraní příkazového řádkuKonfigurace koncového bodu služby Veřejná Azure Portal
Rozhraní příkazového řádkuKonfigurace privátního propojení Privátní Azure Portal
Rozhraní příkazového řádkuInstalace nejnovější verze PHP pro váš operační systém
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:
- Přihlaste se k webu Azure Portal.
- Přejděte na stránku Azure Database for MySQL. Můžete vyhledat a vybrat servery Azure Database for MySQL.
- Vyberte server MySQL (například mydemoserver).
- 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á:
// 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:
//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