Inicio rápido: Uso de PHP para conectarse y consultar datos en Azure Database for MySQL

SE APLICA A: Azure Database for MySQL: Servidor único

Importante

El servidor único de Azure Database for MySQL está en la ruta de retirada. Se recomienda encarecidamente actualizar al servidor flexible de Azure Database for MySQL. Para más información sobre la migración al servidor flexible de Azure Database for MySQL, consulte ¿Qué ocurre con Azure Database for MySQL con servidor único?

En este tutorial rápido se muestra cómo conectarse a una instancia de Azure Database for MySQL mediante una aplicación de PHP. Se indica cómo usar instrucciones SQL para consultar, insertar, actualizar y eliminar datos en la base de datos.

Requisitos previos

Para esta guía de inicio rápido, necesitará lo siguiente:

Nota

Estamos usando la biblioteca de MySQLi para administrar la conexión y consultar el servidor en este inicio rápido.

Obtención de información sobre la conexión

Para obtener la información de conexión del servidor de bases de datos de Azure Portal, siga estos pasos:

  1. Inicie sesión en Azure Portal.

  2. Vaya a la página Azure Database for MySQL. Puede buscar Azure Database for MySQL y selecciónelo. Find Azure Database for MySQL

  3. Seleccione el servidor de MySQL (como mydemoserver).

  4. En la página de información general, copie el nombre del servidor completo junto al nombre del servidor y el nombre de usuario administrador junto a Nombre de inicio de sesión del administrador del servidor. Para copiar el nombre del servidor o nombre de host, mantenga el cursor sobre él y seleccione el icono Copiar.

Importante

  • Si olvidó la contraseña, puede restablecerla .
  • Reemplace los parámetros de host, username, password y db_name con sus propios valores**.

Paso 1: Conexión al servidor

SSL está habilitado de manera predeterminada. Es posible que tenga que descargar el certificado de SSL DigiCertGlobalRootG2 para conectarse desde el entorno local. Este código llama a:

  • mysqli_init para inicializar MySQLi.
  • mysqli_ssl_set para apuntar a la ruta de acceso del certificado SSL. Esto es necesario para el entorno local, pero no es necesario para la aplicación web de App Service o las máquinas virtuales de Azure.
  • mysqli_real_connect para conectarse a MySQL.
  • mysqli_close para cerrar la conexión.
$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());
}

Paso 2: Creación de una tabla

Use el código siguiente para conectarse. Este código llama a:

// 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");
}

Paso 3: Insertar datos

Use el código siguiente para insertar datos mediante la instrucción SQL INSERT. Este código usa los métodos:

//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);
}

Paso 4: Lectura de datos

Use el código siguiente para leer los datos mediante la instrucción SQL SELECT. El código usa el método:

//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);
 }

Paso 5: Eliminación de datos

Use el código siguiente para eliminar filas mediante la instrucción SQL DELETE. El código usa los métodos:

//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);
}

Limpieza de recursos

Para limpiar todos los recursos utilizados durante esta guía de inicio rápido, elimine el grupo de recursos con el siguiente comando:

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

Pasos siguientes