Hızlı Başlangıç: PostgreSQL için Azure Veritabanı - Esnek Sunucu'da verileri bağlamak ve sorgulamak için PHP kullanma
ŞUNLAR IÇIN GEÇERLIDIR: PostgreSQL için Azure Veritabanı - Esnek Sunucu
Bu hızlı başlangıçta PHP uygulaması kullanarak bir PostgreSQL için Azure Veritabanı bağlanma işlemi gösterilmektedir. Hızlı başlangıçta, veritabanında verileri sorgulamak, eklemek, güncelleştirmek ve silmek için SQL deyimlerinin nasıl kullanılacağı da gösterilmiştir. Bu makaledeki adımlarda PHP kullanarak geliştirme konusunda bilgi sahibi olduğunuz ve PostgreSQL için Azure Veritabanı ile çalışmaya yeni olduğunuz varsayılır.
Önkoşullar
Bu hızlı başlangıçta başlangıç noktası olarak PostgreSQL için Azure Veritabanı - Esnek Sunucu örneği oluşturma bölümünde oluşturulan kaynaklar kullanılır.
PHP yükleme
Sunucunuza PHP yükleyin veya PHP içeren bir Azure web uygulaması oluşturun.
Windows
- PHP 7.1.4 iş parçacığı olmayan güvenli (x64) sürümünü indirin
- PHP'yi yükleyin ve diğer yapılandırmalar için PHP kılavuzuna bakın
- Kod, PHP yüklemesine dahil olan pgsql sınıfını (ext/php_pgsql.dll) kullanır.
- Genellikle
C:\Program Files\PHP\v7.1\php.ini
konumunda bulunan php.ini yapılandırma dosyasını düzenleyerek pgsql uzantısını etkinleştirin. Yapılandırma dosyası,extension=php_pgsql.so
metnine sahip bir satır içermelidir. Gösterilmiyorsa, metni ekleyin ve dosyayı kaydedin. Metin varsa ancak noktalı virgül ön ekiyle açıklama eklenmişse, noktalı virgülü kaldırarak metnin açıklamasını kaldırın.
Linux (Ubuntu)
- PHP 7.1.4 iş parçacığı olmayan güvenli (x64) sürümünü indirin
- PHP'yi yükleyin ve diğer yapılandırmalar için PHP kılavuzuna bakın
- Kod, pgsql sınıfını (php_pgsql.so) kullanır.
sudo apt-get install php-pgsql
öğesini çalıştırarak yükleyin. /etc/php/7.0/mods-available/pgsql.ini
yapılandırma dosyasını düzenleyerek pgsql uzantısını etkinleştirin. Yapılandırma dosyası,extension=php_pgsql.so
metnine sahip bir satır içermelidir. Gösterilmiyorsa, metni ekleyin ve dosyayı kaydedin. Metin varsa ancak noktalı virgül ön ekiyle açıklama eklenmişse, noktalı virgülü kaldırarak metnin açıklamasını kaldırın.
macOS
- PHP 7.1.4 sürümünü indirin
- PHP'yi yükleyin ve diğer yapılandırmalar için PHP kılavuzuna bakın
Bağlantı bilgilerini alma
PostgreSQL için Azure Veritabanı'na bağlanmak üzere gereken bağlantı bilgilerini alın. Tam sunucu adına ve oturum açma kimlik bilgilerine ihtiyacınız vardır.
- Azure Portal’da oturum açın.
- Azure portalında sol taraftaki menüden Tüm kaynaklar'ı seçin ve oluşturduğunuz sunucuyu (mydemoserver gibi) arayın.
- Sunucu adını seçin.
- Sunucunun Genel Bakış panelinden Sunucu adı ile Sunucu yöneticisi oturum açma adı’nı not alın. Parolanızı unutursanız, bu panelden parolayı da sıfırlayabilirsiniz.
Bağlanma ve tablo oluşturma
CREATE TABLE SQL deyimini kullanarak bağlanmak ve tablo oluşturmak için aşağıdaki kodu, ardından tabloya satır eklemek için INSERT INTO SQL deyimlerini kullanın.
PostgreSQL için Azure Veritabanı bağlanmak için pg_connect() kod çağrısı yöntemi kullanılır. Ardından, birkaç komut çalıştırmak için pg_query() yöntemini birkaç kez çağırır ve her seferinde bir hata oluşup oluşmadiğini denetlemek için pg_last_error() öğesini çağırır. Ardından, bağlantıyı kapatmak için pg_close() yöntemini çağırır.
$host
, , $database
$user
ve $password
parametrelerini değerlerinizle değiştirin.
<?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);
?>
Verileri okuma
SELECT SQL deyimini kullanarak bağlanmak ve verileri okumak için aşağıdaki kodu kullanın.
PostgreSQL için Azure Veritabanı bağlanmak için pg_connect() kod çağrısı yöntemi kullanılır. Ardından sonuçları bir sonuç kümesinde tutarak SELECT komutunu çalıştırmak için pg_query() yöntemini ve bir hata oluşursa ayrıntıları kontrol etmek için pg_last_error() yöntemini çağırır. Sonuç kümesini okumak için döngüde satır başına bir kez pg_fetch_row() yöntemi çağrılır ve her dizi konumunda sütun başında bir veri değeri olacak şekilde $row
dizisinde satır verileri alınır. Sonuç kümesini boşaltmak için pg_free_result() yöntemi çağrılır. Daha sonra bağlantıyı kapatmak için pg_close() yöntemini çağırır.
$host
, , $database
$user
ve $password
parametrelerini değerlerinizle değiştirin.
<?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);
?>
Verileri güncelleştirme
UPDATE SQL deyimini kullanarak bağlanmak ve verileri güncelleştirmek için aşağıdaki kodu kullanın.
PostgreSQL için Azure Veritabanı bağlanmak için pg_connect() kod çağrısı yöntemi kullanılır. Ardından bir komut çalıştırmak için pg_query() yöntemini ve bir hata oluşursa ayrıntıları kontrol etmek için pg_last_error() yöntemini çağırır. Daha sonra bağlantıyı kapatmak için pg_close() yöntemini çağırır.
$host
, , $database
$user
ve $password
parametrelerini değerlerinizle değiştirin.
<?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);
?>
Veri silme
DELETE SQL deyimini kullanarak bağlanmak ve verileri okumak için aşağıdaki kodu kullanın.
PostgreSQL için Azure Veritabanı bağlanmak için pg_connect() kod çağrısı yöntemi kullanılır. Ardından bir komut çalıştırmak için pg_query() yöntemini ve bir hata oluşursa ayrıntıları kontrol etmek için pg_last_error() yöntemini çağırır. Daha sonra bağlantıyı kapatmak için pg_close() yöntemini çağırır.
$host
, , $database
$user
ve $password
parametrelerini değerlerinizle değiştirin.
<?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);
?>
Kaynakları temizleme
Bu hızlı başlangıç sırasında kullanılan tüm kaynakları temizlemek için aşağıdaki komutu kullanarak kaynak grubunu silin:
az group delete \
--name $AZ_RESOURCE_GROUP \
--yes
İlgili içerik
- PostgreSQL için Azure Veritabanı - Esnek Sunucuyu yönetme.
- Hızlı Başlangıç: Esnek PostgreSQL için Azure Veritabanı sunucu örneğine bağlanmak ve veri sorgulamak için Python kullanın.
- Hızlı Başlangıç: PostgreSQL için Azure Veritabanı esnek sunucunun bir örneğine bağlanmak ve verileri sorgulamak için Java kullanın.
- Hızlı Başlangıç: Esnek PostgreSQL için Azure Veritabanı sunucu örneğine bağlanmak ve verileri sorgulamak için .NET (C#) kullanın.
- Hızlı Başlangıç: Esnek PostgreSQL için Azure Veritabanı sunucu örneğine bağlanmak ve veri sorgulamak için Go dilini kullanın.
- Hızlı Başlangıç: Esnek PostgreSQL için Azure Veritabanı sunucu örneğine bağlanmak ve veri sorgulamak için Azure CLI'yi kullanın.
- Hızlı Başlangıç: Power BI'da PostgreSQL için Azure Veritabanı - Esnek Sunucudan verileri içeri aktarma.