التشغيل السريع: استخدم PHP للاتصال والاستعلام عن البيانات في قاعدة بيانات Azure ل PostgreSQL - خادم مرن
ينطبق على: قاعدة بيانات Azure ل PostgreSQL - خادم مرن
يوضح هذا التشغيل السريع الاتصال بقاعدة بيانات Azure ل PostgreSQL باستخدام تطبيق PHP . توضح طريقة استخدام عبارات SQL الاستعلام عن البيانات وإدراجها وتحديثها وحذفها في قاعدة البيانات. تفترض الخطوات الواردة في هذه المقالة أنك على دراية بالتطوير باستخدام PHP وجديدة في العمل مع قاعدة بيانات Azure ل PostgreSQL.
المتطلبات الأساسية
يستخدم هذا التشغيل السريع الموارد التي تم إنشاؤها في إنشاء مثيل لقاعدة بيانات Azure ل PostgreSQL - الخادم المرن كنقطة بداية.
تثبيت PHP
تثبيت PHP على الخادم الخاص بك، أو إنشاء تطبيق ويب Azure يتضمن PHP.
Windows
- تنزيل إصدار PHP 7.1.4 غير الآمن (x64)
- تثبيت PHP والرجوع إلى دليل PHP لمزيد من التكوين
- يستخدم الرمز فئة pgsql (ext/php_pgsql.dll) المضمنة في تثبيت PHP.
- تمكين ملحق pgsql عن طريق تحرير ملف تكوين php.ini، الموجود عادة في
C:\Program Files\PHP\v7.1\php.ini
. يجب أن يحتوي ملف التكوين على سطر مع النصextension=php_pgsql.so
. إذا لم يظهر، أضف النص واحفظ الملف. إذا كان النص موجودا ولكن تم التعليق عليه ببادئة فاصلة منقوطة، ففك التعليق عن النص عن طريق إزالة الفاصلة المنقطة.
Linux (Ubuntu)
- تنزيل إصدار PHP 7.1.4 غير الآمن (x64)
- تثبيت PHP والرجوع إلى دليل PHP لمزيد من التكوين
- تستخدم التعليمات البرمجية فئة pgsql (php_pgsql.so). قم بتثبيته عن طريق تشغيل
sudo apt-get install php-pgsql
. - تمكين ملحق pgsql عن طريق تحرير
/etc/php/7.0/mods-available/pgsql.ini
ملف التكوين. يجب أن يحتوي ملف التكوين على سطر مع النصextension=php_pgsql.so
. إذا لم يظهر، أضف النص واحفظ الملف. إذا كان النص موجودا ولكن تم التعليق عليه ببادئة فاصلة منقوطة، ففك التعليق عن النص عن طريق إزالة الفاصلة المنقطة.
macOS
- تنزيل إصدار PHP 7.1.4
- تثبيت PHP والرجوع إلى دليل PHP لمزيد من التكوين
الحصول على معلومات الاتصال
الحصول على معلومات الاتصال المطلوبة للاتصال بقاعدة بيانات Azure لـ PostgreSQL. أنت بحاجة إلى اسم الخادم المؤهل بالكامل وبيانات اعتماد تسجيل الدخول.
- سجّل الدخول إلى مدخل Azure.
- من القائمة اليسرى في مدخل Microsoft Azure، حدد All resources، ثم ابحث عن الخادم الذي تم إنشاؤه (مثل mydemoserver).
- حدد اسم الخادم.
- من لوحة نظرة عامة على الخادم، دوّن ملاحظة عن اسم الخادم واسم تسجيل دخول مسؤول الخادم. إذا نسيت كلمة المرور، يمكنك أيضًا إعادة تعيين كلمة المرور من هذه اللوحة.
توصيل جدول وإنشائه
استخدم التعليمات البرمجية التالية للاتصال وإنشاء جدول باستخدام عبارة CREATE TABLE SQL، متبوعة عبارات INSERT INTO SQL لإضافة صفوف إلى الجدول.
يتم استخدام أسلوب استدعاء التعليمات البرمجية pg_connect() للاتصال بقاعدة بيانات Azure ل PostgreSQL. ثم يستدعي الأسلوب - pg_query() - عدة مرات لتشغيل عدة أوامر، pg_last_error () للتحقق من التفاصيل إذا حدث خطأ في كل مرة. ثم يستدعي الأسلوب pg_close() لإغلاق الاتصال.
$host
$database
استبدل المعلمات و $user
$password
بقيمك.
<?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);
?>
اقرأ البيانات
استخدم التعليمات البرمجية التالية للاتصال وقراءة البيانات باستخدام حدد عبارة SQL.
يتم استخدام أسلوب استدعاء التعليمات البرمجية pg_connect() للاتصال بقاعدة بيانات Azure ل PostgreSQL. ثم يستدعي الأسلوب pg_query() لتشغيل الأمر SELECT، مع الاحتفاظ بالنتائج في مجموعة نتائج، pg_last_error () للتحقق من التفاصيل في حالة حدوث خطأ. لقراءة مجموعة النتائج، يتم استدعاء الأسلوب pg_fetch_row() في حلقة، مرة واحدة لكل صف، ويتم استرداد بيانات الصف في صفيف $row
، مع قيمة بيانات واحدة لكل عمود في كل موضع صفيف. لتحرير مجموعة النتائج، يتم استدعاء الأسلوب pg_free_result() . ثم يستدعي الأسلوب pg_close() لإغلاق الاتصال.
$host
$database
استبدل المعلمات و $user
$password
بقيمك.
<?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);
?>
تحديث البيانات
استخدم التعليمات البرمجية التالية للاتصال وتحديث البيانات باستخدام عبارة SQL UPDATE.
يتم استخدام أسلوب استدعاء التعليمات البرمجية pg_connect() للاتصال بقاعدة بيانات Azure ل PostgreSQL. ثم يستدعي الأسلوب pg_query() لتشغيل أمر، pg_last_error () للتحقق من التفاصيل في حالة حدوث خطأ. ثم يستدعي الأسلوب pg_close() لإغلاق الاتصال.
$host
$database
استبدل المعلمات و $user
$password
بقيمك.
<?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);
?>
حذف البيانات
استخدم التعليمات البرمجية التالية للاتصال وقراءة البيانات باستخدام عبارة DELETE SQL.
يتم استخدام أسلوب استدعاء التعليمات البرمجية pg_connect() للاتصال بقاعدة بيانات Azure ل PostgreSQL. ثم يستدعي الأسلوب pg_query() لتشغيل أمر، pg_last_error () للتحقق من التفاصيل في حالة حدوث خطأ. ثم يستدعي الأسلوب pg_close() لإغلاق الاتصال.
$host
$database
استبدل المعلمات و $user
$password
بقيمك.
<?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);
?>
تنظيف الموارد
لتنظيف جميع الموارد المستخدمة في أثناء هذا التشغيل السريع حذف مجموعة الموارد باستخدام الأمر التالي:
az group delete \
--name $AZ_RESOURCE_GROUP \
--yes
المحتوى ذو الصلة
- إدارة قاعدة بيانات Azure ل PostgreSQL - خادم مرن.
- التشغيل السريع: استخدم Python للاتصال والاستعلام عن البيانات من مثيل قاعدة بيانات Azure لخادم PostgreSQL المرن.
- التشغيل السريع: استخدم Java للاتصال والاستعلام عن البيانات من مثيل قاعدة بيانات Azure لخادم PostgreSQL المرن.
- التشغيل السريع: استخدم .NET (C#) للاتصال والاستعلام عن البيانات من مثيل قاعدة بيانات Azure لخادم PostgreSQL المرن.
- التشغيل السريع: استخدم لغة Go للاتصال والاستعلام عن البيانات من مثيل قاعدة بيانات Azure لخادم PostgreSQL المرن.
- التشغيل السريع: استخدم Azure CLI للاتصال والاستعلام عن البيانات من مثيل قاعدة بيانات Azure لخادم PostgreSQL المرن.
- التشغيل السريع: استيراد البيانات من قاعدة بيانات Azure ل PostgreSQL - خادم مرن في Power BI.