برمجة

مقدمة مهمة عن قواعد البيانات

مفهوم – مقدمه عن قواعد البيانات :

قواعد البيانات بحر كبير , كل ما تراه من الانظمه الحاليه والمتطوره, اساس نجاحها قواعد البيانات ولكن تتسائل ماهي قواعد البيانات ؟ قواعد البيانات عباره عن قاعدة بها جداول توجد بها المعلومات الي تقوم بتخزينها , غير واضح صحيح ؟ انظر حولك في البيت, هل يوجد لديك مكتب, اعتبره قاعدة البيانات, في هذا المكتب يوجد ادراج تضع بها اورقاك واشياء الشخصيه, درج للاقلام , درج للكتب , و درج للاوراق وهذه هي اماكن التخزين في قاعدة البيانات وماتسمى بي الجداول.

 قواعد البيانات مقابل نظام الملفات :

لو تسآلت لماذا نستخدم قواعد البيانات ؟ لماذا لا نستخدم ملف ونضع فيه معلوماتنا, الاجابه بسيطه. طرق التخزين , المساحه , سهولة الاستعلام

طرق التخزين :

في الملفات نقوم بالتخزين بطريقه صعبه , فلو قلنا كل سطر يحوي على معلومات مستخدم لدينا بالموقع , وفي هذا السطر فواصل تفصل كل معلومه على حده مثل ( الاسم , العمر , كلمة المرور ) تخيل معي كيف ستقوم بقرائة هذا الملف وماهي الطريقة التي ستستخرج بها المعلومات , طريقه طويله لتقوم بعمل هذا كله ولكن مع قواعد البيانات فهي سهله جدا , فقط تقوم بتعيين نوع الحقل الذي تريده وتضع به القيم وهي تقوم بعمل الباقي من ترتيب ومن استخراج ومن وضع كل قيمه لوحدها وغيرها من الشروط مثل عدم التكرار.

المساحه :

 تخيل موقع الياهو الذي يملك اكثر من مليون مستخدم , كم ملف سوف يقوم بإستيعاب جميع هؤلاء المستخدمين ؟ وكم سوف تكون احجام الملفات ؟ هل هو شي منطقي ؟ غير ان استخراج معلومه ما سوف يكون بطيئ جدا فهو غير منطقي اساسا, لكن مع قواعد البيانات فهو مسهل بطريقه ممتازه, مرتب بطريقه جيده, ولا يأخذ حيزا كبيرا مثل الملفات , وعند القراء يكون اسرع.

سهولة الاستعلام :

لو نرجع الى مثالنا , الملف الذي يحوي على اسماء المسجلين بالموقع , تخيل انهم 1000 مستخدم , كل مستخدم في سطر بالملف, لو اردت ان تقارن الاسم في الملف بالاسم الذي ادخله المستخدم فسوف تحتاج الى تقوم بقراء الملف كاملا اي 1000 سطر, لكي تقوم بإيجاد المعلومه المطلوبه , سوف تقول ماذا لو كان المستخدم في اول الملف , اذن ماذا لو كان في اخر الملف وكان رقم 1000 ؟ اعتقد ان الصوره وضحت. لكن مع قواعد البيانات فالاستعلام سهل جدا عن طريق اللغه المسماه SQL , فهي لغة منطقيه جدا وطريقتها سهله جدا فمجرد ان تقول اختر من الجدول ( مستخدمين ) القيمه التي تساوي ( اسم المستخدم المدخل ) فقط , وسوف يقوم الاستعلام بأخبارك هل يوجد اسم المستخدم ام لا .

لماذا قواعد البيانات :

اعتقد ان الكلام الذي قرأته بالاعلى اقنعك ان نظام قواعد البيانات افضل بكثير واخبرك لماذا نحتاج الى قواعد البيانات, ولكن ذلك لا يعني اننا لو اردنا عمل شي بسيط جدا ان نستعمل نظام قواعد البيانات, بل سيكون كافيا نظام الملفات ولكن في حالات نادره , ولا اظن ان هناك احد يستخدم نظام الملفات الى الان. من خصائص قواعد البيانات التالي:

السرعه
السهوله
التنظيم
تقليل التكرار
تقليل المعلومات الغير مفيده
وغيرها الكثير التي لا حصر لها , ويمكن ان تذهب الى Google وان تكتب في محرك البحث why to use database , وسوف تحصل على المعلومات الكافيه التي تحتاجها.

قاعدة البيانات MySQL:

هناك كثير من قواعد البيانات موجوده الان , ويمكن انك قرأت عنها في الدرس الاول الذي يتكلم عن لغة PHP . ولكن لو لاحظت ان اغلب مبرمجين PHP يستخدمون هذه القاعده لخصائصها , فهي مجانيه , مفتوحة المصدر , سريعه , سهله. ولكن احد عيوبها انها لا تدعم العلاقات الا بطريقه معينه. وسوف نتكلم عن العلاقات في اخر الدرس.

معرفات قواعد البيانات:

لدينا 3 معرفات في قواعد البيانات وهي : قاعدة البيانات , الجدول , العمود

قاعدة البيانات :

وهي المحتوى ( الحقيبه ) التي يكون بها جميع معلوماتنا , ويمكنك انشاء اكثر من قاعدة بيانات

الجدول :

كل حقيبه لديها حافظات ( جيب ) واحد للاقلام , وواحد للاوراق وواحد للكتب ,, وهذه ما اعنيه بالجداول

العمود :

العمود هنا تخيله كأنه التفرعات لحافظات , فحافظات الاقلام ( جيب الاقلام ) يحتوي على اربع خانات لحفظ الاقلام واكثر , قلم احمر وقلم اخضر وقلم ازرق وقلم اسود

انواع الاعمده في قواعد البيانات :

الانواع الرقميه :

TINYINT
SMALLINT
MEDUIMINT
INT
INTEGER
BIGINT
الانواع العشريه :

FLOAT
DOUBLE
REAL
DECIMAL
NUMERIC
الوقت والتاريخ :

DATE
TIME
DATETIME
TIMESTAMP
YEAR
النصوص العاديه :

CHAR
VARCHAR

الكتابات و ( BLOB ) :

TINYBLOB
TINYTEXT
BLOB
TEXT
MEDUIMBLOB
MEDUIMTEXT
LONGBLOB
LONGTEXT
الخيارات والتعدديه:

ENUM
SET