يستخدم تطبيق Quickstart لغة بي اتش بي والاستعلام عن البيانات في قاعدة بيانات Azure لنظام MySQL

ينطبق على: قاعدة بيانات Azure ل MySQL - خادم واحد

هام

قاعدة بيانات Azure لخادم MySQL الفردي على مسار الإيقاف. نوصي بشدة بالترقية إلى قاعدة بيانات Azure لخادم MySQL المرن. لمزيد من المعلومات حول الترحيل إلى خادم Azure Database for MySQL المرن، راجع ما الذي يحدث لقاعدة بيانات Azure لخادم MySQL الفردي؟

يوضح هذا التشغيل السريع كيفية الاتصال بقاعدة بيانات Azure ل MySQL باستخدام تطبيق PHP . توضح طريقة استخدام عبارات SQL الاستعلام عن البيانات وإدراجها وتحديثها وحذفها في قاعدة البيانات.

المتطلبات الأساسية

ستتعرف في هذا البدء السريع على:

إشعار

نحن نستخدم مكتبة MySQLi لإدارة الاتصال والاستعلام عن الخادم في هذا التشغيل السريع.

الحصول على معلومات الاتصال

يمكنك الحصول على معلومات اتصال خادم قاعدة البيانات من مدخل Azure portal باتباع الخطوات التالية:

  1. سجّل الدخول إلى مدخل Azure.
  2. انتقل إلى صفحة قواعد بيانات Azure لنظام MySQL. يمكنك البحث عن قاعدة بيانات Azure لخوادم MySQL وتحديدها.
  3. حدد خادم MySQL (مثل mydemoserver).
  4. في صفحة نظرة عامة ، انسخ اسم الخادم المؤهل بالكامل بجوار اسم الخادم واسم مستخدم المسؤول بجوار اسم تسجيل دخول مسؤول الخادم. لنسخ اسم الخادم أو اسم المضيف، مرر فوقه وحدد الأيقونة Copy .

هام

  • إذا نسيت كلمة المرور الخاصة بك، يمكنك إعادة تعيين كلمة المرور.
  • استبدل معلمات المضيف واسم المستخدم وكلمة المرور db_name بالقيم الخاصة بك**

الخطوة 1: الاتصال بالخادم

ميزة طبقة مآخذ الاتصال الآمنة غير متاحة افتراضيًا. قد تحتاج إلى تنزيل شهادة DigiCertGlobalRootG2 SSL للاتصال من بيئتك المحلية. تشترط هذه التعليمات البرمجية:

  • mysqli_init لتهيئة MySQLi.
  • mysqli_ssl_set للإشارة إلى مسار شهادة SSL. يُشترط ذلك في البيئة المحلية ولكنه غير مطلوب لتطبيق الويب لخدمات التطبيق أو الآلات الافتراضية في Azure.
  • mysqli_real_connect للاتصال ب MySQL.
  • mysqli_close لإغلاق الاتصال.
$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());
}

الخطوة 2: إنشاء جدول

استخدم التعليمات البرمجية التالية للاتصال. تشترط هذه التعليمات البرمجية:

  • mysqli_query لتشغيل الاستعلام.
// 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");
}

الخطوة 3: إدراج البيانات

استخدم التعليمات البرمجية التالية لإدراج البيانات باستخدام عبارة INSERT SQL. تستخدم هذا التعليمات البرمجية الطرق:

  • mysqli_prepare لإنشاء عبارة إدراج معدة
  • mysqli_stmt_bind_param لربط المعلمات لكل قيمة عمود مدرجة.
  • mysqli_stmt_execute
  • mysqli_stmt_close لإغلاق العبارة باستخدام الأسلوب
//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);
}

الخطوة 4: قراءة البيانات

استخدم التعليمات البرمجية التالية لقراءة البيانات باستخدام عبارة SELECT SQL. تستخدم هذا التعليمات البرمجية طريقة:

  • mysqli_query تنفيذ استعلام SELECT
  • mysqli_fetch_assoc لإحضار الصفوف الناتجة.
//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);
 }

الخطوة 5: حذف البيانات

استخدم التعليمات البرمجية التالية حذف الصفوف باستخدام عبارة DELETE SQL. تستخدم التعليمات البرمجية الطرق:

  • mysqli_prepare لإنشاء عبارة حذف معدة
  • mysqli_stmt_bind_param ربط المعلمات
  • mysqli_stmt_execute تنفيذ عبارة الحذف المعدة
  • mysqli_stmt_close إغلاق العبارة
//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);
}

تنظيف الموارد

لتنظيف جميع الموارد المستخدمة في أثناء هذا التشغيل السريع حذف مجموعة الموارد باستخدام الأمر التالي:

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

الخطوات التالية