Professional Documents
Culture Documents
اهداف الدرس:
لو تسآلت لماذا نستخدم قواعد البيانات ؟ لماذا ل نستخدم ملف ونضع
فيه معلوماتنا ,الجابه بسيطه .طرق التخزين ,المساحه ,سهولة
الستعلم
في الملفات نقوم بالتخزين بطريقه صعبه ,فلو قلنا كل سطر يحوي على
معلومات مستخدم لدينا بالموقع ,وفي هذا السطر فواصل تفصل كل
معلومه على حده مثل ) السم ,العمر ,كلمة المرور ( تخيل معي كيف
ستقوم بقرائة هذا الملف وماهي الطريقة التي ستستخرج بها
المعلومات ,طريقه طويله لتقوم بعمل هذا كله ولكن مع قواعد البيانات
فهي سهله جدا ,فقط تقوم بتعيين نوع الحقل الذي تريده وتضع به القيم
وهي تقوم بعمل الباقي من ترتيب ومن استخراج ومن وضع كل قيمه
لوحدها وغيرها من الشروط مثل عدم التكرار.
المساحه :
تخيل موقع الياهو الذي يملك اكثر من مليون مستخدم ,كم ملف سوف
يقوم بإستيعاب جميع هؤلء المستخدمين ؟ وكم سوف تكون احجام
الملفات ؟ هل هو شي منطقي ؟ غير ان استخراج معلومه ما سوف يكون
بطيئ جدا فهو غير منطقي اساسا ,لكن مع قواعد البيانات فهو مسهل
بطريقه ممتازه ,مرتب بطريقه جيده ,ول يأخذ حيزا كبيرا مثل الملفات ,
وعند القراء يكون اسرع.
لو نرجع الى مثالنا ,الملف الذي يحوي على اسماء المسجلين بالموقع ,
تخيل انهم 1000مستخدم ,كل مستخدم في سطر بالملف ,لو اردت ان
تقارن السم في الملف بالسم الذي ادخله المستخدم فسوف تحتاج الى
تقوم بقراء الملف كامل اي 1000سطر ,لكي تقوم بإيجاد المعلومه
المطلوبه ,سوف تقول ماذا لو كان المستخدم في اول الملف ,اذن ماذا
لو كان في اخر الملف وكان رقم 1000؟ اعتقد ان الصوره وضحت.
لكن مع قواعد البيانات فالستعلم سهل جدا عن طريق اللغه المسماه
, SQLفهي لغة منطقيه جدا وطريقتها سهله جدا فمجرد ان تقول اختر
من الجدول ) مستخدمين ( القيمه التي تساوي ) اسم المستخدم المدخل (
فقط ,وسوف يقوم الستعلم بأخبارك هل يوجد اسم المستخدم ام ل .
لماذا قواعد البيانات :
اعتقد ان الكلم الذي قرأته بالعلى اقنعك ان نظام قواعد البيانات افضل
بكثير واخبرك لماذا نحتاج الى قواعد البيانات ,ولكن ذلك ل يعني اننا لو
اردنا عمل شي بسيط جدا ان نستعمل نظام قواعد البيانات ,بل سيكون
كافيا نظام الملفات ولكن في حالت نادره ,ول اظن ان هناك احد يستخدم
نظام الملفات الى الن .من خصائص قواعد البيانات التالي:
-1السرعه
-2السهوله
-3التنظيم
-4تقليل التكرار
هناك كثير من قواعد البيانات موجوده الن ,ويمكن انك قرأت عنها في
الدرس الول الذي يتكلم عن لغة . PHPولكن لو لحظت ان اغلب
مبرمجين PHPيستخدمون هذه القاعده لخصائصها ,فهي مجانيه ,
مفتوحة المصدر ,سريعه ,سهله .ولكن احد عيوبها انها ل تدعم
العلقات ال بطريقه معينه .وسوف نتكلم عن العلقات في اخر الدرس.
كل حقيبه لديها حافظات ) جيب ( واحد للقلم ,وواحد للوراق وواحد
للكتب ,,وهذه ما اعنيه بالجداول
العمود :
TINYINT
SMALLINT
MEDUIMINT
INT
INTEGER
BIGINT
: النواع العشريه
FLOAT
DOUBLE
REAL
DECIMAL
NUMERIC
: الوقت والتاريخ
DATE
TIME
DATETIME
TIMESTAMP
YEAR
: النصوص العاديه
CHAR
VARCHAR
: ( BLOB ) الكتابات و
TINYBLOB
****TINY
BLOB
****
MEDUIMBLOB
****MEDUIM
LONGBLOB
****LONG
:الخيارات والتعدديه
ENUM
SET
امثله على قواعد البيانات:
جدول يقوم بتخزين معلومات المستخدمين:
تخيل ان لدينا رسام ,هذا الرسام يقوم برسم عدة لوحات ,ولكن كل
لوحة من عمل رسام واحد فقط لحظ الصوره التاليه :
العلقه المسماه بي N:Mاو كثير لكثير ) ( Many : Many
لو لدينا طلب ولدينا مواد ,فكل طالب يمكنه ان يأخذ ماده او اكثر ,وكل
ماده يمكن ان يأخذها اكثر من طالب اليس ذلك صحيحا ؟ ولكن هذه
العلقه ليست جيده لنها لن تحل مشكلة التكرار ,ولكن نقوم بحلها عن
طريق شي يسمى ) ( Bridge Entityاو ) الجسر ( لحظ الصورتين
التاليه:
ولكي نقوم بحل هذه العلقه او ايجاد طريقه اخرى لها نستخدم الجسر
مثل الصوره التاليه:
طرق ربط العلقات في قواعد البيانات :
في تصميم قاعدة البيانات يجب علينا ان نقوم بأشياء كثيره ,اولها ان
نقوم بتحليل ومعرفة ماذا نريد من هذه القاعده ,كيفية عملها ,كيفية
ترتيب المعلومات المفيده لنا بالقاعده ,ويجب ان نقوم برسم القاعده
على الورق اول لكي نستنتج هل منطقنا صحيح في تصميم هذه القاعده
ام ل .ويجب ان نحل مشكلة التكرار ,فتخيل لو لدينا جدول يحتوي على
معلومات العميل ومعلومات الموظف الذي قام بخدمته ,في كل مره ندرج
مستخدم يجب ان ندرج العميل مره اخرى ولو قام العميل بتغيير اسمه او
رقمه ,فسنحتاج الى تغيير كل الصفوف التي يوجد بها هذا العميل ,
ولكن لو جعلنا العميل في جدول والموظف في جدول ,فسيكون لكل
عميل صف واحد في جدول العملء ولكل موظف صف واحد في جدول
الموظفين ثم نربطهما ببعض .فلو غير عميل رقم هاتفه سوف نقوم
بالتعديل مره واحده فقط.
برامج قواعد البيانات من أكثر البرامج الحاسوبية انتشارًا وهي عبارة عن تخزين البيانات
وعرضها بطريقة أو أكثر .
وقواعد البيانات كتعريف مختصر لها برنامج مهمته تخزين البيانات والتحكم بطرق إظهارها
والتعديل فيها .
يطلق على قواعد بيانات ميكروسوفت أكسس اسم قواعد البيانات العلئقية ويقصد بها قواعد
البيانات التي تكون الجداول فيها مترابطة بينها بعلقات في حقل واحد أو أكثر .
والهدف الساسي من ربط الجداول هو منع تكرار البيانات والحد من مساحات التخزين الضائعة
والرفع من كفاءة قاعدة البيانات .
وسيتم تفصيل أنواع العلقات وكيفية الربط بين الجداول في قسم العلقات .
وقد وضعت ميكروسوفت في هذا البرنامج كائنات تساعد المستخدم لدخال البيانات واستخراجها
من القاعدة وطباعتها ،وهذه الكائنات هي :
) (1الجداول :وهي مكان تخزين البيانات في القاعدة ،وتتكون الجداول من حقول )أعمدة(
وسجلت )صفوف( .
) (2استعلمات :وهي كما يتضح من اسمها استعلم عن بيانات معينة في القاعدة تنطبق
عليها معايير محددة ،أو كائنات لتنفيذ عمليات على البيانات في الجداول كحذف سجلت أو
تحديثها أو إنشاء الجداول أو َإلحاق سجلت بها .
) (3النماذج :وهي مكان تسجيل البيانات التي ترغب في حفظها في الجدول ،وتحريرها .
) (4التقارير :وهي كائنات عرض وطباعة البيانات بأشكال وطرق وتنسيقات منوعة .
) (5الصفحات :وهي صفحات تعرض البيانات في ملفات من نوع HTMLمنفصلة عن
ملف القاعدة الساسي وذلك لعرضها على شبكة النترنت .
) (6الماكرو :أبسط تعريف له هو كائن يمكن وضع أمر أو عدة أوامر أو إجراءات فيه ليتم
تنفيذها .
) (7الوحدات النمطية :هي مكان تخزين أوامر وإجراءات ليتم تنفيذها أو استدعاؤها بأكثر
من طريقة وتختلف عن الماكرو بإمكانية التحكم في هذه الوامر بشكل أكبر وأنها ذات
إمكانيات أوسع وأكبر وأدق وتحكم أكثر فيها .