شرح البداية بإستخدام 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();
?>
موفق
ردحذف