Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym przewodniku Szybki start pokazano, jak nawiązać połączenie z Azure Database for PostgreSQL przy użyciu aplikacji 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. W krokach w tym artykule założono, że wiesz już, jak programować przy użyciu języka PHP i dopiero zaczynasz pracę z Azure Database for PostgreSQL.
Wymagania wstępne
Ten przewodnik szybkiego startu używa zasobów utworzonych w temacie Tworzenie bazy danych w usłudze Azure Database for PostgreSQL jako punktu początkowego.
Instalowanie języka PHP
Zainstaluj język PHP na serwerze lub utwórz aplikację internetową platformy Azure zawierającą język PHP.
Windows
- Pobierz wersję php 7.1.4 nonthread safe (x64).
- Zainstaluj język PHP i zapoznaj się z podręcznikiem języka PHP w celu przeprowadzenia dalszej konfiguracji.
- Kod używa klasy pgsql (ext/php_pgsql.dll), która jest zawarta w instalacji języka PHP.
- Włącz rozszerzenie pgsql , edytując plik konfiguracji php.ini, zazwyczaj znajdujący się w lokalizacji
C:\Program Files\PHP\v7.1\php.ini. Plik konfiguracji powinien zawierać wiersz z tekstemextension=php_pgsql.so. Jeśli nie jest wyświetlany, dodaj tekst i zapisz plik. Jeśli tekst jest obecny, ale skomentowany z prefiksem średnika, odkomentuj tekst, usuwając średnik.
Linux (Ubuntu)
- Pobierz wersję PHP 7.1.4 non-thread safe (x64).
- Zainstaluj język PHP i zapoznaj się z podręcznikiem języka PHP w celu przeprowadzenia dalszej konfiguracji.
- Kod używa klasy pgsql (php_pgsql.so). Zainstaluj go, uruchamiając polecenie
sudo apt-get install php-pgsql. - Włącz rozszerzenie pgsql , edytując
/etc/php/7.0/mods-available/pgsql.iniplik konfiguracji. Plik konfiguracji powinien zawierać wiersz z tekstemextension=php_pgsql.so. Jeśli nie jest wyświetlany, dodaj tekst i zapisz plik. Jeśli tekst jest obecny, ale skomentowany z prefiksem średnika, odkomentuj tekst, usuwając średnik.
macOS
- Pobierz wersję PHP 7.1.4
- Zainstaluj język PHP i zapoznaj się z podręcznikiem PHP , aby uzyskać dalszą konfigurację
Uzyskaj informacje o połączeniu
Uzyskaj informacje o połączeniu potrzebne do nawiązania połączenia z bazą danych Azure Database for PostgreSQL. Potrzebujesz w pełni kwalifikowanej nazwy serwera i poświadczeń uwierzytelniania.
- Zaloguj się w witrynie Azure Portal.
- W menu po lewej stronie w witrynie Azure Portal wybierz pozycję Wszystkie zasoby, a następnie wyszukaj utworzony serwer (na przykład mydemoserver).
- Wybierz nazwę serwera.
- Po przejściu do panelu Przegląd serwera zanotuj nazwę serwera i nazwę logowania administratora serwera. Jeśli zapomnisz hasła, możesz również je zresetować z poziomu tego panelu.
Łączenie i tworzenie tabeli
Użyj poniższego kodu, aby nawiązać połączenie i utworzyć tabelę przy użyciu instrukcji CREATE TABLE SQL, a następnie instrukcji INSERT INTO SQL, aby dodać wiersze do tabeli.
Metoda wywołania kodu pg_connect() służy do nawiązywania połączenia z usługą Azure Database for PostgreSQL. Następnie wywołuje metodę — pg_query() — kilka razy, aby uruchomić kilka poleceń, a pg_last_error(), aby sprawdzić szczegóły, czy wystąpił błąd za każdym razem. Następnie wywołuje metodę pg_close(), aby zamknąć połączenie.
Zastąp parametry $host, $database, $user i $password swoimi wartościami.
<?php
// Initialize connection variables.
$host = "mydemoserver.postgres.database.azure.com";
$database = "mypgsqldb";
$user = "mylogin@mydemoserver";
$password = "<server_admin_password>";
// Initialize connection object.
$connection = pg_connect("host=$host dbname=$database user=$user password=$password")
or die("Failed to create connection to database: ". pg_last_error(). "<br/>");
print "Successfully created a connection to the database.<br/>";
// Drop the previous table of the same name if one exists.
$query = "DROP TABLE IF EXISTS inventory;";
pg_query($connection, $query)
or die("Encountered an error when executing given sql statement: ". pg_last_error(). "<br/>");
print "Finished dropping table (if existed).<br/>";
// Create table.
$query = "CREATE TABLE inventory (id serial PRIMARY KEY, name VARCHAR(50), quantity INTEGER);";
pg_query($connection, $query)
or die("Encountered an error when executing given sql statement: ". pg_last_error(). "<br/>");
print "Finished creating table.<br/>";
// Insert some data into the table.
$name = '\'banana\'';
$quantity = 150;
$query = "INSERT INTO inventory (name, quantity) VALUES ($name, $quantity);";
pg_query($connection, $query)
or die("Encountered an error when executing given sql statement: ". pg_last_error(). "<br/>");
$name = '\'orange\'';
$quantity = 154;
$query = "INSERT INTO inventory (name, quantity) VALUES ($name, $quantity);";
pg_query($connection, $query)
or die("Encountered an error when executing given sql statement: ". pg_last_error(). "<br/>");
$name = '\'apple\'';
$quantity = 100;
$query = "INSERT INTO inventory (name, quantity) VALUES ($name, $quantity);";
pg_query($connection, $query)
or die("Encountered an error when executing given sql statement: ". pg_last_error()). "<br/>";
print "Inserted 3 rows of data.<br/>";
// Closing connection
pg_close($connection);
?>
Odczyt danych
Użyj poniższego kodu, aby nawiązać połączenie i odczytać dane za pomocą instrukcji SELECT języka SQL.
Kod używa funkcji pg_connect(), aby nawiązać połączenie z Azure Database for PostgreSQL. Następnie wywołuje pg_query(), aby uruchomić polecenie SELECT i zachować wyniki w zestawie wyników. Jeśli wystąpi błąd, kod wywołuje metodę pg_last_error(), aby sprawdzić szczegóły. Aby odczytać zestaw wyników, kod wywołuje metodę pg_fetch_row() w pętli, raz w wierszu. Dane wierszy są pobierane w tablicy $rowz jedną wartością danych na kolumnę w każdej pozycji tablicy. Aby zwolnić zestaw wyników, kod wywołuje metodę pg_free_result(). Po zakończeniu kod wywołuje metodę pg_close(), aby zamknąć połączenie.
Zastąp parametry $host, $database, $user i $password swoimi wartościami.
<?php
// Initialize connection variables.
$host = "mydemoserver.postgres.database.azure.com";
$database = "mypgsqldb";
$user = "mylogin@mydemoserver";
$password = "<server_admin_password>";
// Initialize connection object.
$connection = pg_connect("host=$host dbname=$database user=$user password=$password")
or die("Failed to create connection to database: ". pg_last_error(). "<br/>");
print "Successfully created a connection to the database. <br/>";
// Perform some SQL queries over the connection.
$query = "SELECT * from inventory";
$result_set = pg_query($connection, $query)
or die("Encountered an error when executing given sql statement: ". pg_last_error(). "<br/>");
while ($row = pg_fetch_row($result_set))
{
print "Data row = ($row[0], $row[1], $row[2]). <br/>";
}
// Free result_set
pg_free_result($result_set);
// Closing connection
pg_close($connection);
?>
Aktualizowanie danych
Użyj poniższego kodu, aby nawiązać połączenie i zaktualizować dane za pomocą instrukcji UPDATE języka SQL.
Kod używa funkcji pg_connect(), aby nawiązać połączenie z Azure Database for PostgreSQL. Następnie wywołuje pg_query(), aby uruchomić polecenie. Jeśli wystąpi błąd, kod wywołuje metodę pg_last_error(), aby sprawdzić szczegóły. Po zakończeniu kod wywołuje metodę pg_close(), aby zamknąć połączenie.
Zastąp parametry $host, $database, $user i $password swoimi wartościami.
<?php
// Initialize connection variables.
$host = "mydemoserver.postgres.database.azure.com";
$database = "mypgsqldb";
$user = "mylogin@mydemoserver";
$password = "<server_admin_password>";
// Initialize connection object.
$connection = pg_connect("host=$host dbname=$database user=$user password=$password")
or die("Failed to create connection to database: ". pg_last_error(). ".<br/>");
Print "Successfully created a connection to the database. <br/>";
// Modify some data in a table.
$new_quantity = 200;
$name = '\'banana\'';
$query = "UPDATE inventory SET quantity = $new_quantity WHERE name = $name;";
pg_query($connection, $query)
or die("Encountered an error when executing given sql statement: ". pg_last_error(). ".<br/>");
print "Updated 1 row of data. </br>";
// Closing connection
pg_close($connection);
?>
Usuwanie danych
Użyj poniższego kodu, aby nawiązać połączenie z bazą danych i usunąć dane przy użyciu instrukcji DELETE języka SQL.
Kod używa funkcji pg_connect(), aby nawiązać połączenie z Azure Database for PostgreSQL. Następnie wywołuje pg_query(), aby uruchomić polecenie. Jeśli wystąpi błąd, kod wywołuje metodę pg_last_error(), aby sprawdzić szczegóły. Po zakończeniu kod wywołuje metodę pg_close(), aby zamknąć połączenie.
Zastąp parametry $host, $database, $user i $password swoimi wartościami.
<?php
// Initialize connection variables.
$host = "mydemoserver.postgres.database.azure.com";
$database = "mypgsqldb";
$user = "mylogin@mydemoserver";
$password = "<server_admin_password>";
// Initialize connection object.
$connection = pg_connect("host=$host dbname=$database user=$user password=$password")
or die("Failed to create connection to database: ". pg_last_error(). ". </br>");
print "Successfully created a connection to the database. <br/>";
// Delete some data from a table.
$name = '\'orange\'';
$query = "DELETE FROM inventory WHERE name = $name;";
pg_query($connection, $query)
or die("Encountered an error when executing given sql statement: ". pg_last_error(). ". <br/>");
print "Deleted 1 row of data. <br/>";
// Closing connection
pg_close($connection);
?>
Uprzątnij zasoby
Aby usunąć wszystkie zasoby używane w tym przewodniku Szybki start, usuń grupę zasobów za pomocą następującego polecenia:
az group delete \
--name $AZ_RESOURCE_GROUP \
--yes
Treści powiązane
- Zarządzanie usługą Azure Database for PostgreSQL przy użyciu witryny Azure Portal.
- Szybki start: nawiązywanie połączeń i wykonywanie zapytań dotyczących danych z usługi Azure Database for PostgreSQL przy użyciu języka Python.
- Szybki start: nawiązywanie połączeń i wykonywanie zapytań dotyczących danych z usługi Azure Database for PostgreSQL przy użyciu języka Java.
- Szybki start: nawiązywanie połączeń i wykonywanie zapytań dotyczących danych z usługi Azure Database for PostgreSQL przy użyciu platformy .NET (C#).
- Szybki start: nawiązywanie połączeń i wykonywanie zapytań dotyczących danych z usługi Azure Database for PostgreSQL przy użyciu języka Go.
- Szybki start: nawiązywanie połączeń i wykonywanie zapytań dotyczących danych z usługi Azure Database for PostgreSQL przy użyciu interfejsu wiersza polecenia platformy Azure.
- Szybki start: importowanie danych z usługi Azure Database for PostgreSQL w usłudze Power BI.