شرح البداية بإستخدام SQLite مع PHP

PHP تقدم نسختين من إضافة SQLite مفعلة إفتراضيا منذ الإصدار 5.0، النسخة الأخيرة معروفة بـ sqlite3 وهي محتواة في الإصدار 5.3 فما فوق.

يوفر ملحق sqlite3 واجهة للوصول إلى SQLite 3. كما يتضمن واجهات لأوامر SQL. بالإضافة إلى ذلك، يتيح لك إنشاء إستعلامات SQL ومعالجتها باستخدام PHP.

الإتصال بقاعدة بيانات SQLite

الكود التالي في الأسفل يوضح كيفية الإتصال بقاعدة بيانات تم إنشائها من قبل، وإن تم تكن موجودة يقوم بإنشائها وفي الأخير يقوم بإرجاع كائن قاعدة البيانات.

<?php
   class MyDB extends SQLite3 {
      function __construct() {
         $this->open('bilalbentoumi.db');
      }
   }

   $db = new MyDB();

   if(!$db)
      echo $db->lastErrorMsg();
   else
      echo "تم فتح قاعدة البيانات بنجاح<br>";
?>

بعد تشغيل البرنامج في الأعلى يقوم بإنشاء قاعدة البيانات في نفس مجلد البرنامج، بإمكانك تغيير المسار الذي تريد حفظ قاعدة البيانات فيه من خلال تغيرر 'bilalbentoumi.db' إلى 'المسار/إسم_قاعدة_البيانات.db'، إذا تم إنشائها بنجاح سيقوم البرنامج بإظهار رسالة "تم فتح قاعدة البيانات بنجاح" وإذا لم ينجح في إنشائها سيعرض لك رسالة الخطأ الذي حدث.

إنشاء جدول

البرنامج التالي يقوم بإنشاء جدول في قاعدة البيانات التي تم إنشائها سابقا

<?php
    class MyDB extends SQLite3 {
        function __construct() {
            $this->open('bilalbentoumi.db');
        }
    }

    $db = new MyDB();

    if(!$db)
        echo $db->lastErrorMsg();
    else
        echo "تم فتح قاعدة البيانات بنجاح<br>";

    $sql = "
        CREATE TABLE PERSON (
            ID           INTEGER  NOT NULL  PRIMARY KEY  AUTOINCREMENT,
            FIRST_NAME   TEXT,
            LAST_NAME    TEXT,
            AGE          INTEGER)
    ";

    $ret = $db->exec($sql);

    if(!$ret)
        echo $db->lastErrorMsg();
    else
        echo "تم إنشاء الجدول بنجاح<br>";

    $db->close();
?>

عند تنفيذ البرنامج السابق، سيقوم بإنشاء جدول بإسم "PERSON" الذي يحتوي على الأعمدة ID, FIRST_NAME, LAST_NAME, AGE، إذا تم إنشائه بنجاح سيعرض لك الرسالة التالية

تم فتح قاعدة البيانات بنجاح
تم إنشاء الجدول بنجاح

عملية الإضافة INSERT

برنامج PHP يتسعمل لإنشاء جدول في قاعدة البيانات التي أنشأها سابقا.

<?php
    class MyDB extends SQLite3 {
        function __construct() {
            $this->open('bilalbentoumi.db');
        }
    }

    $db = new MyDB();

    if(!$db)
        echo $db->lastErrorMsg();
    else
        echo "تم فتح قاعدة البيانات بنجاح<br>";

    $sql = "
        INSERT INTO PERSON(FIRST_NAME, LAST_NAME, AGE)
        VALUES ('Ahmed', 'Mostafa', 27);

        INSERT INTO PERSON(FIRST_NAME, LAST_NAME, AGE)
        VALUES ('Mohammed', 'Nassim', 32);

        INSERT INTO PERSON(FIRST_NAME, LAST_NAME, AGE)
        VALUES ('Issam', 'Djamal', 46);
    ";

    $ret = $db->exec($sql);

    if(!$ret)
        echo $db->lastErrorMsg();
    else
        echo "تم إضافة السجلات بنجاح<br>";

    $db->close();
?>

عملية التحديد SELECT

برنامج PHP يتسعمل لإنشاء جدول في قاعدة البيانات التي أنشأها سابقا.

<?php
    class MyDB extends SQLite3 {
        function __construct() {
            $this->open('bilalbentoumi.db');
        }
    }

    $db = new MyDB();

    if(!$db)
        echo $db->lastErrorMsg();
    else
        echo "تم فتح قاعدة البيانات بنجاح<br>";

    $sql = "SELECT * FROM PERSON";

    $ret = $db->query($sql);

    while($row = $ret->fetchArray(SQLITE3_ASSOC) ) {
       echo "ID = " . $row['ID'] . "<br>";
       echo "First Name = " . $row['FIRST_NAME'] . "<br>";
       echo "Last Name = " . $row['LAST_NAME'] . "<br>";
       echo "Age = " . $row['AGE'] . "<br><br>";
    }

    echo "تمت العملية بنجاح<br>";

    $db->close();
?>

تعليقات

إرسال تعليق

المشاركات الشائعة من هذه المدونة