Bagikan melalui


Mulai cepat: Menggunakan PHP untuk menyambungkan dan mengkueri data di Azure Database for PostgreSQL - Server Fleksibel

BERLAKU UNTUK: Azure Database for PostgreSQL - Server Fleksibel

Mulai cepat ini menunjukkan menyambungkan ke Azure Database for PostgreSQL menggunakan aplikasi PHP . Ini menunjukkan cara menggunakan pernyataan SQL untuk mengkueri, menyisipkan, memperbarui, dan menghapus data dalam database. Langkah-langkah dalam artikel ini mengasumsikan bahwa Anda terbiasa mengembangkan menggunakan PHP dan baru bekerja dengan Azure Database for PostgreSQL.

Prasyarat

Mulai cepat ini menggunakan sumber daya yang dibuat dalam Membuat instans Azure Database for PostgreSQL - Server Fleksibel sebagai titik awal.

Menginstal PHP

Instal PHP di server Anda, atau buat aplikasi web Azure yang menyertakan PHP.

Windows

  • Unduh versi AMAN nonthread PHP 7.1.4 (x64)
  • Pasang PHP dan lihat manual PHP untuk konfigurasi lebih lanjut
  • Kode menggunakan kelas pgsql (ext/php_pgsql.dll) yang disertakan dalam penginstalan PHP.
  • Mengaktifkan ekstensi pgsql dengan mengedit file konfigurasi php.ini, biasanya terletak di C:\Program Files\PHP\v7.1\php.ini. File konfigurasi harus berisi baris dengan teks extension=php_pgsql.so. Jika tidak ditampilkan, tambahkan teks dan simpan file. Jika teks ada tetapi dikomentari dengan awalan titik koma, batalkan komentar teks dengan menghapus titik koma.

Linux (Ubuntu)

  • Unduh versi AMAN nonthread PHP 7.1.4 (x64)
  • Pasang PHP dan lihat manual PHP untuk konfigurasi lebih lanjut
  • Kode ini menggunakan kelas pgsql (php_pgsql.so). Pasang dengan menjalankan sudo apt-get install php-pgsql.
  • Aktifkan ekstensi pgsql dengan mengedit file konfigurasi /etc/php/7.0/mods-available/pgsql.ini. File konfigurasi harus berisi baris dengan teks extension=php_pgsql.so. Jika tidak ditampilkan, tambahkan teks dan simpan file. Jika teks ada tetapi dikomentari dengan awalan titik koma, batalkan komentar teks dengan menghapus titik koma.

macOS

Mendapatkan informasi koneksi

Dapatkan informasi terkait koneksi yang diperlukan untuk menyambungkan ke Azure Database for PostgreSQL. Anda memerlukan nama server dan kredensial untuk masuk yang sepenuhnya memenuhi syarat.

  1. Masuk ke portal Azure.
  2. Dari menu sebelah kiri di portal Azure, pilih Semua sumber daya, lalu cari server yang Anda buat (seperti mydemoserver).
  3. Pilih nama server.
  4. Dari panel server Gambaran Umum, buat catatan Nama server dan Nama untuk masuk admin server. Jika lupa kata sandi, Anda juga dapat mengatur ulang kata sandi dari panel ini.

Menyambungkan dan membuat tabel

Gunakan kode berikut untuk menyambungkan dan membuat tabel menggunakan pernyataan CREATE TABLE SQL, diikuti dengan pernyataan INSERT INTO SQL untuk menambahkan baris ke tabel.

Metode panggilan kode pg_connect() digunakan untuk menyambungkan ke Azure Database for PostgreSQL. Kemudian, ini memanggil metode - pg_query() - beberapa kali untuk menjalankan beberapa perintah, dan pg_last_error() untuk memeriksa detail apakah terjadi kesalahan setiap kali. Kemudian, ia memanggil metode pg_close() untuk menutup koneksi.

$hostGanti parameter , $database, $user, dan $password dengan nilai Anda.

<?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);
?>

Membaca data

Gunakan kode berikut untuk menyambungkan dan membaca data menggunakan pernyataan SQL SELECT.

Metode panggilan kode pg_connect() digunakan untuk menyambungkan ke Azure Database for PostgreSQL. Kemudian memanggil metode pg_query() untuk menjalankan perintah SELECT, menyimpan hasil dalam tataan hasil, dan pg_last_error() untuk memeriksa detail jika terjadi kesalahan. Untuk membaca tataan hasil, metode pg_fetch_row() dipanggil dalam perulangan, sekali per baris, dan data baris diambil dalam larik $row, dengan satu nilai data per kolom di setiap posisi larik. Untuk mengosongkan tataan hasil, metode pg_free_result() dipanggil. Kemudian memanggil metode pg_close() untuk menutup koneksi.

$hostGanti parameter , $database, $user, dan $password dengan nilai Anda.

<?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);
?>

Memperbarui data

Gunakan kode berikut untuk menyambungkan dan memperbarui data menggunakan pernyataan SQL UPDATE.

Metode panggilan kode pg_connect() digunakan untuk menyambungkan ke Azure Database for PostgreSQL. Kemudian memanggil metode pg_query() untuk menjalankan perintah, dan pg_last_error() untuk memeriksa detail jika terjadi kesalahan. Kemudian memanggil metode pg_close() untuk menutup koneksi.

$hostGanti parameter , $database, $user, dan $password dengan nilai Anda.

<?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);
?>

Menghapus data

Gunakan kode berikut dengan tujuan menyambungkan dan membaca data menggunakan pernyataan SQL HAPUS.

Metode panggilan kode pg_connect() digunakan untuk menyambungkan ke Azure Database for PostgreSQL. Kemudian memanggil metode pg_query() untuk menjalankan perintah, dan pg_last_error() untuk memeriksa detail jika terjadi kesalahan. Kemudian memanggil metode pg_close() untuk menutup koneksi.

$hostGanti parameter , $database, $user, dan $password dengan nilai Anda.

<?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);
?>

Membersihkan sumber daya

Untuk membersihkan semua sumber daya yang digunakan selama mulai cepat ini, hapus grup sumber daya menggunakan perintah berikut:

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