الدرس الثانى التعرف على قواعد البيانات

Baraaمنذ 4 سنوات

السلام عليكم ورحمة الله وبركاته 

 

بدأنا المرة اللى فاتت سلسلة قواعد البيانات وعرفنا يعنى ايه بيانات "data", قواعد بيانات "database", نظام إدارة قواعد البيانات "DBMS". لو ماكنتش لسه شوفته تقدر تشوفه من هنا

هانكمل النهاردة كلامنا وهانعرف قاعدة البيانات بتتكون من ايه.
أشهر أنواع قواعد البيانات هى ال Relational database. كلمة relational جاية من relation ومعناها علاقة. وسبب التسمية هنا سبب رياضى يتعلق بفرع من فروع الجبر وهو Relational Algebra.
وبما ان قواعد البيانات ليها DBMS فهاتكون فى حالتنا هنا اسمها Relational DBMS واختصارا RDBMS.
البيانات فى النوع ده من قواعد البيانات بتتخزن فى صورة جداول Tables. كل جدول منهم بيتكون حقول "fields" اللى هيا الأعمدة, وتسجيلات "records" اللى هيا الصفوف.
كل حقل بيتسجل فيه بيانات من نوع محدد يناسبها. الأنواع دى منها: 

  1.  رقمية زى العدد الصحيح int والأعداد الكسرية float
  2. نصية زى varchar للنصوص القصيرة و text للنصوص الطويلة
  3.  الوقت والتاريخ زى date و time و datetime
  • وأنواع غيرها كتير

وفى حالة ما إذا كان الحقل اختيارى بنديله خاصية nullable. بمعنى انه ممكن فى بعض ال records مايتحطش فى الحقل ده حاجة، أو بمعنى أصح يتحط فيه لا شىء "null"!

لنفرض ان عندنا قاعدة بيانات خاصة بمتجر. قاعدة البيانات دى فيها جدول للعملاء وجدول للمنتجات وجدول للطلبات.
نخلينا دلوقتى مع جدول العملاء

ايه هيا البيانات اللى ممكن احددها لكل عميل وهاتهمنى كصاحب متجر؟

- غالبا هاتكون الاسم والعنوان ووقت اضافة العميل لقاعدة البيانات، وهانضيف عليهم عمود خاص بال id بحيث يكون فيه رقم أو كود خاص بكل عميل مايتكررش أبدا، وده عشان نفرق بين العملاء فى حالة تشابه بعض البيانات زى الاسم والعنوان.
طب ايه أنواع الحقول اللى هاتناسب البيانات دى؟

-الاسم هايناسبه نوع varchar لانه قيمة نصية ليها طول محدود، العنوان ممكن يناسبه varchar وممكن يكون text لو هايتجاوز الحد الأقصى لعدد الحروف، وقت ادراج العميل datetime عشان نعرف ال record ده اتضاف يوم ايه والساعة كام بالضبط، ال id لو أرقام بس هايناسبه int ولو هايبقى كود مكون من حروف وأرقام يبقى varchar.

طب احنا كنا قولنا ان قاعدة البيانات بتعبر عن بيانات واقعية مرتبطة بحاجة معينة وهى فى حالتنا "المتجر". وخدنا مثال على جدول منهم وهو جدول العملاء. طب بالنسبة لبقية الجداول هانربطها ازاى مع بعض

بما ان كل جدول منفصل عن التانى؟

عشان كده لازم يكون فيه نوع من الربط بين البيانات وبعضها لان العميل "من جدول العملاء" بيطلب طلب "جدول الطلبات" والطلب ده بيبقى فيه منتجات "جدول المنتجات" .
ده بقى اللى هانشوفه فى الموضوع الجاى بإذن الله

المحاضر

Baraa

الكلمات الدليلية

عن الدرس

0 إعجاب
1 متابع
0 مشاركة
786 مشاهدات
منذ 4 سنوات

التعليقات (0)

لايوجد لديك حساب في عالم البرمجة؟

تحب تنضم لعالم البرمجة؟ وتنشئ عالمك الخاص، تنشر المقالات، الدورات، تشارك المبرمجين وتساعد الآخرين، اشترك الآن بخطوات يسيرة !