Guia de início rápido: usar PHP para conectar e consultar dados no Banco de Dados do Azure para MySQL

APLICA-SE A: Banco de Dados do Azure para MySQL - Servidor Único

Importante

O servidor único do Banco de Dados do Azure para MySQL está no caminho de desativação. É altamente recomendável que você atualize para o Banco de Dados do Azure para o servidor flexível MySQL. Para obter mais informações sobre como migrar para o Banco de Dados do Azure para servidor flexível MySQL, consulte O que está acontecendo com o Banco de Dados do Azure para Servidor Único MySQL?

Este guia de início rápido explica como se pode ligar a uma Base de Dados do Azure para MySQL através de uma aplicação PHP. Explica como utilizar as instruções SQL para consultar, inserir, atualizar e eliminar dados da base de dados.

Pré-requisitos

Para este guia de início rápido, você precisa:

Nota

Estamos usando a biblioteca MySQLi para gerenciar, conectar e consultar o servidor neste início rápido.

Obter informações da ligação

Você pode obter as informações de conexão do servidor de banco de dados do portal do Azure seguindo estas etapas:

  1. Inicie sessão no portal do Azure.

  2. Navegue até a página Bancos de Dados do Azure para MySQL. Você pode pesquisar e selecionar o Banco de Dados do Azure para MySQL. Find Azure Database for MySQL

  3. Selecione seu servidor MySQL (como mydemoserver).

  4. Na página Visão geral, copie o nome do servidor totalmente qualificado ao lado de Nome do servidor e o nome de usuário administrador ao lado de Nome de login do administrador do servidor. Para copiar o nome do servidor ou do host, passe o mouse sobre ele e selecione o ícone Copiar .

Importante

  • Se se esqueceu da sua palavra-passe, pode redefini-la.
  • Substitua os parâmetros de host, nome de usuário, senha e db_name por seus próprios valores**

Etapa 1: Conectar-se ao servidor

O SSL está habilitado por padrão. Talvez seja necessário baixar o certificado SSL DigiCertGlobalRootG2 para se conectar a partir do seu ambiente local. Este código chama:

  • mysqli_init inicializar o MySQLi.
  • mysqli_ssl_set apontar para o caminho do certificado SSL. Isso é necessário para seu ambiente local, mas não é necessário para o Aplicativo Web do Serviço de Aplicativo ou máquinas virtuais do Azure.
  • mysqli_real_connect para se conectar ao MySQL.
  • mysqli_close para fechar a conexão.
$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());
}

Etapa 2: Criar uma tabela

Use o código a seguir para se conectar. Este código chama:

  • mysqli_query executar a consulta.
// 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");
}

Etapa 3: Inserir dados

Use o código a seguir para inserir dados usando uma instrução INSERT SQL. Este código usa os métodos:

  • mysqli_prepare criar uma instrução de inserção preparada
  • mysqli_stmt_bind_param vincular os parâmetros para cada valor de coluna inserido.
  • mysqli_stmt_execute
  • mysqli_stmt_close fechar a instrução usando o método
//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);
}

Passo 4: Ler dados

Use o código a seguir para ler os dados usando uma instrução SELECT SQL. O código usa o método:

  • mysqli_query executar a consulta SELECT
  • mysqli_fetch_assoc buscar as linhas resultantes.
//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);
 }

Etapa 5: Excluir dados

Use as seguintes linhas de exclusão de código usando uma instrução DELETE SQL. O código usa os métodos:

  • mysqli_prepare criar uma instrução de exclusão preparada
  • mysqli_stmt_bind_param vincula os parâmetros
  • mysqli_stmt_execute executa a instrução delete preparada
  • mysqli_stmt_close encerra a declaração
//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);
}

Clean up resources (Limpar recursos)

Para limpar todos os recursos usados durante este início rápido, exclua o grupo de recursos usando o seguinte comando:

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

Próximos passos