Snabbstart: Använda PHP för att ansluta och fråga efter data i Azure Database for MySQL
GÄLLER FÖR: Azure Database for MySQL – enskild server
Viktigt!
Azure Database for MySQL – enskild server är på väg att dras tillbaka. Vi rekommenderar starkt att du uppgraderar till en flexibel Azure Database for MySQL-server. Mer information om hur du migrerar till en flexibel Azure Database for MySQL-server finns i Vad händer med Azure Database for MySQL – enskild server?
Den här snabbstarten visar hur du ansluter till en Azure Database för MySQL med hjälp av ett PHP-program. Den visar hur du använder SQL-instruktioner för att fråga, infoga, uppdatera och ta bort data i databasen.
Förutsättningar
För den här snabbstarten behöver du:
Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
Skapa en enskild Azure Database for MySQL-server med Hjälp av Azure-portalen
eller Azure CLI om du inte har något.Baserat på om du använder offentlig eller privat åtkomst slutför du en av åtgärderna nedan för att aktivera anslutningen.
Åtgärd Anslutningsmetod Instruktionsguide Konfigurera brandväggsregler Publikt Portal
CLIKonfigurera tjänstslutpunkt Publikt Portal
CLIKonfigurera privat länk Privat Portal
CLIInstallera den senaste PHP-versionen för operativsystemet
Kommentar
Vi använder MySQLi-biblioteket för att hantera ansluta och fråga servern i den här snabbstarten.
Hämta anslutningsinformation
Du kan hämta information om databasserveranslutningen från Azure-portalen genom att följa dessa steg:
Logga in på Azure-portalen.
Gå till sidan Azure Databases for MySQL. Du kan söka efter och välja Azure Database for MySQL.
Välj din MySQL-server (till exempel mydemoserver).
På sidan Översikt kopierar du det fullständigt kvalificerade servernamnet bredvid Servernamn och administratörsanvändarnamnet bredvid Inloggningsnamnet för serveradministratör. Om du vill kopiera servernamnet eller värdnamnet hovrar du över det och markerar ikonen Kopiera.
Viktigt!
- Om du har glömt lösenordet kan du återställa lösenordet.
- Ersätt parametrarna värd, användarnamn, lösenord och db_name med dina egna värden**
Steg 1: Anslut till servern
SSL är aktiverat som standard. Du kan behöva ladda ned DigiCertGlobalRootG2 SSL-certifikatet för att ansluta från din lokala miljö. Den här koden anropar:
- mysqli_init initiera MySQLi.
- mysqli_ssl_set att peka på SSL-certifikatsökvägen. Detta krävs för din lokala miljö men krävs inte för App Service Web App eller Virtuella Azure-datorer.
- mysqli_real_connect för att ansluta till MySQL.
- mysqli_close för att stänga anslutningen.
$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());
}
Steg 2: Skapa en tabell
Använd följande kod för att ansluta. Den här koden anropar:
// 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");
}
Steg 3: Infoga data
Använd följande kod för att infoga data med hjälp av en INSERT SQL-instruktion . Den här koden använder metoderna:
- mysqli_prepare för att skapa en förberedd insert-instruktion
- mysqli_stmt_bind_param för att binda parametrarna för varje infogat kolumnvärde.
- mysqli_stmt_execute
- mysqli_stmt_close för att stänga -instruktionen med hjälp av metoden
//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);
}
Steg 4: Läsa data
Använd följande kod för att läsa data med hjälp av en SELECT SQL-instruktion . Koden använder metoden:
//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);
}
Steg 5: Ta bort data
Använd följande rader för att ta bort kod med hjälp av en DELETE SQL-instruktion . Koden använder metoderna:
- mysqli_prepare för att skapa en förberedd borttagningsinstruk
- mysqli_stmt_bind_param binder parametrarna
- mysqli_stmt_execute kör den förberedda borttagningssatsen
- mysqli_stmt_close stänger instruktionen
//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);
}
Rensa resurser
Om du vill rensa alla resurser som används under den här snabbstarten tar du bort resursgruppen med följande kommando:
az group delete \
--name $AZ_RESOURCE_GROUP \
--yes