Szybki start: nawiązywanie połączeń i wykonywanie zapytań dotyczących danych w usłudze Azure Database for MySQL przy użyciu języka PHP
DOTYCZY: Azure Database for MySQL — pojedynczy serwer
Ważne
Pojedynczy serwer usługi Azure Database for MySQL znajduje się na ścieżce wycofania. Zdecydowanie zalecamy uaktualnienie do serwera elastycznego usługi Azure Database for MySQL. Aby uzyskać więcej informacji na temat migracji do serwera elastycznego usługi Azure Database for MySQL, zobacz Co się dzieje z usługą Azure Database for MySQL — pojedynczy serwer?
Ten przewodnik Szybki start przedstawia sposób nawiązywania połączeń z usługą Azure Database for MySQL przy użyciu aplikacji języka PHP. Pokazano w nim, jak używać instrukcji języka SQL w celu wysyłania zapytań o dane oraz wstawiania, aktualizowania i usuwania danych w bazie danych.
Wymagania wstępne
W tym przewodniku Szybki start potrzebne są następujące elementy:
Konto platformy Azure z aktywną subskrypcją. Utwórz konto bezpłatnie.
Tworzenie pojedynczego serwera usługi Azure Database for MySQL przy użyciu witryny Azure Portal
lub interfejs wiersza polecenia platformy Azure, jeśli go nie masz.Na podstawie tego, czy używasz dostępu publicznego czy prywatnego, wykonaj jedną z poniższych akcji, aby włączyć łączność.
Akcja Metoda łączności Przewodnik z instrukcjami Konfigurowanie reguł zapory Publiczne Portal
Interfejs wiersza poleceniaKonfigurowanie punktu końcowego usługi Publiczne Portal
Interfejs wiersza poleceniaKonfigurowanie łącza prywatnego Prywatne Portal
Interfejs wiersza poleceniaTworzenie bazy danych i użytkownika niebędącego administratorem
Instalowanie najnowszej wersji języka PHP dla systemu operacyjnego
Uwaga
Używamy biblioteki MySQLi do zarządzania połączeniem i wykonywaniem zapytań dotyczących serwera w tym przewodniku Szybki start.
Pobieranie informacji o połączeniu
Informacje o połączeniu serwera bazy danych można uzyskać w witrynie Azure Portal, wykonując następujące kroki:
- Zaloguj się w witrynie Azure Portal.
- Przejdź do strony Azure Databases for MySQL. Możesz wyszukać i wybrać pozycję Serwery usługi Azure Database for MySQL.
- Wybierz serwer MySQL (np . mydemoserver).
- Na stronie Przegląd skopiuj w pełni kwalifikowaną nazwę serwera obok pozycji Nazwa serwera i nazwę użytkownika administratora obok pozycji Nazwa logowania administratora serwera. Aby skopiować nazwę serwera lub hosta, umieść na niej wskaźnik myszy i wybierz ikonę Kopiuj.
Ważne
- Jeśli nie pamiętasz hasła, możesz zresetować hasło.
- Zastąp parametry hosta, nazwy użytkownika, hasła i db_name własnymi wartościami**
Krok 1. Nawiązywanie połączenia z serwerem
Protokół SSL jest domyślnie włączony. Aby nawiązać połączenie ze środowiska lokalnego, może być konieczne pobranie certyfikatu SSL DigiCertGlobalRootG2. Ten kod wywołuje następujące wywołania:
- mysqli_init zainicjować plik MySQLi.
- mysqli_ssl_set wskazać ścieżkę certyfikatu SSL. Jest to wymagane dla środowiska lokalnego, ale nie jest wymagane w przypadku aplikacji internetowej usługi App Service lub maszyn wirtualnych platformy Azure.
- mysqli_real_connect nawiązać połączenie z bazą danych MySQL.
- mysqli_close, aby zamknąć połączenie.
$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. Tworzenie tabeli
Aby nawiązać połączenie, użyj następującego kodu. Ten kod wywołuje następujące wywołania:
// 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. Wstawianie danych
Użyj poniższego kodu, aby wstawić dane przy użyciu instrukcji INSERT JĘZYKA SQL. Ten kod używa metod:
- mysqli_prepare, aby utworzyć przygotowaną instrukcję insert
- mysqli_stmt_bind_param powiązać parametry dla każdej wstawionej wartości kolumny.
- mysqli_stmt_execute
- mysqli_stmt_close, aby zamknąć instrukcję przy użyciu 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. Odczytywanie danych
Użyj następującego kodu, aby odczytać dane przy użyciu instrukcji SELECT JĘZYKA SQL. Kod używa metody :
//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. Usuwanie danych
Użyj następującego kodu, aby usunąć wiersze przy użyciu instrukcji DELETE JĘZYKA SQL. Kod używa metod:
- mysqli_prepare, aby utworzyć przygotowaną instrukcję usuwania
- mysqli_stmt_bind_param wiąże parametry
- mysqli_stmt_execute wykonuje przygotowaną instrukcję delete
- mysqli_stmt_close zamyka instrukcję
//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);
}
Czyszczenie zasobów
Aby wyczyścić wszystkie zasoby używane w tym przewodniku Szybki start, usuń grupę zasobów przy użyciu następującego polecenia:
az group delete \
--name $AZ_RESOURCE_GROUP \
--yes