طريقة رسم نموذج/مخطط علاقات الكيانات (Entity Relationship Model)


نموذج علاقات الكيانات ERD

التمهيد

طلب مني أحد أصدقاء المدونة “Emad” شرح طريقة رسم نموذج علاقات الكيانات والتي تسمى Entity Relationship Model أو Entity Relationship Diagrams وتختصر بكلمة ERD، والتي هي مطلب أساسي لمن يعمل في مجال تحليل النظم وهندسة البرمجيات، حيث يستخدم نموذج ERD لتعريف العلاقات “المنطقية” بين الكيانات في قاعدة البيانات العلائقية، ويقصد بالكيانات الجداول حيث كل جدول يمثل كيانا في قاعدة البيانات.

خطوات رسم نموذج علاقات الكيانات باستخدام Microsoft Visio

– إذهب إلى قائمة File، ثم New، ومن قائمة Software and Database قم باختيار Database Model Diagram وسيظهر لك ملف رسم جديد.

إنشاء ملف رسم جديد

– لتبدأ في إضافة الجداول، قم بسحب شكل Entity وتعني كيان أو وحدة من قائمة الأشكال إلى منطقة الرسم.

إدراج كيان جديد

– لتعديل خصائص الجدول وإضافة الأعمدة قم بالنقر نقرا مزدوجا على شكل “Entity”.

تعريف الكيان

إدراج وتعديل الأعمدة

– بعد أن تقوم بإضافة كافة الجداول قم بإدراج العلاقات من خلال سحب شكل “علاقة” إلى منطقة الرسم ومن ثم توصيلها بين الكائنات.
– لتعديل خصائص العلاقة قم بالنقر نقرا مزودجا على شكل “علاقة”.

إدراج وتعديل علاقة

– بعد أن تنتهي من رسم النموذج تستطيع حفظ العمل كصورة أو ملف XML أو ملف PDF من خلال الذهاب إلى قائمة File والنقر فوق أمر Save As.
بالتأكيد لا يحتاج أن أذكرك بأن:
الأحرف PK هي اختصار كلمة Primary Key وتعني مفتاح أساسي.
الأحرف FK هي اختصار Foreign Key وتعني مفتاح ثانوي.
النص الغامق أو السميك يعني أن هذا الحقل مطلوب (أي لا يقبل أي قيمة فارغة).
النص الذي تحته خط يعني أن هذا الحق مفتاح أساسي.

المزيد

إذا أردت المزيد من التفصيل للشرح السابق، فدعني أحيلك للرابط التالي:
إنشاء طراز قاعدة بيانات ( أو ما يعرف بـ رسم تخطيطي علاقة الوحدات) – Visio – Microsoft Office Online

كذلك تستطيع تنزيل ملف Visio مفتوح المصدر للمثال الذي قمت بشرحه بالنقر فوق الصورة التالية:

خيارات أخرى

إن Microsoft Visio ليس هي الأداة الوحيدة التي من خلالها تستطيع رسم نموذج ERD، بل لديك خيارات أخرى مثل:
– CA ERwin Data Modeler.
– ER Studio.
– Oracle Designer (لقواعد بيانات Oracle وتسمى Entity Diagrams).
وهناك أدوات أخرى لا يسع المقام لحصرها وبالطبع أغلبها غير مجاني، ولكن مع تطور خدمات مواقع Web 2.0 فمن حسن الحظ أن هناك مواقع مجانية تتيح لك رسم مثل هذه المخططات ومنها موقع Gliffy وهو الموقع الذي أفضله، الرابط: www.gliffy.com

هل لديك سؤال لي؟

إبعث بسؤالك عبر البريد الإلكتروني التالي: kuwait10@msn.com
أو من خلال صفحة “إتصل بي”.

تدوينات ذات صلة:

– تعلم معي كيف نرسم المخططات الانسيابية (Flowcharts) – الجزء الأول.
– تعلم معي كيف نرسم المخططات الانسيابية (Flowcharts) – الجزء الثاني.

مراجع:
– Entity-relationship model – Wikipedia, the free encyclopedia

Advertisements

14 فكرة على ”طريقة رسم نموذج/مخطط علاقات الكيانات (Entity Relationship Model)

  1. تعقيب: طريقة رسم نموذج/مخطط علاقات الكيانات (Entity Relationship Model) | الخلاصات العربية
  2. أنا كذلك أشكر WordPress 🙂
    الذي جعلني أكتشف مدونتك الفريدة حقا،
    أتشرف بمعرفتك وبهذا التواصل الأخوي.

    إعجاب

  3. أنا كذلك أشكر WordPress :)الذي جعلني أكتشف مدونتك الفريدة حقا،أتشرف بمعرفتك وبهذا التواصل الأخوي.
    +1

    إعجاب

  4. تعقيب: المخططات: تحويل الأعداد إلى رسومات بيانية | الخلاصات العربية
  5. اخي والله طمعان تمدني بشرح عن اساسيات قواعد البيانات من الصفر …بداية من كونها مكتوبة على ورق الى ان تصبح جداول مرتبطة ببعضها ….وشكرا

    إعجاب

    • أخي لا تطمع فيني 🙂
      أدعوك لتصفح أرشيف المدونة ومتابعتها بصورة مستمرة حيث أنني دائما أكتب عن أساسيات ومبادىء قواعد البيانات.

      إعجاب

  6. تعقيب: البرمجة وتحليل النظم: Structured English « Kuwait10 World
  7. ممكن الحل لهذا السؤال ؟؟
    A hospital records information about its patients, doctors and medicine. For every patient the system keeps his/her number (unique), name, gender, age and two phone numbers (mobile phone and land phone). A patient reserves several appoints with different doctors. A given patient may have several appointments on the same date.
    For a given appointment, the system records its date and time and doctor who is going to treat the patient. A given appointment belongs to one patient.

    The system stores doctor number (unique), name, phone and specialization. A doctor treats several patients and a given patient is treated by several doctors. The doctor prescribes medicine for patients. A doctor prescribes the same medicine to several patients and a given medicine is prescribed by several doctors. A doctor has several appointments but a given appointment is associated with one doctor.

    Also, a patient takes several medicines and a medicine is taken by several patients. For every medicine taken by a patient, the system records prescription number, date of issue, dosage and doctor. For every medicine, the system stores medicine code and name.

    إعجاب

    • عفوا آنا لا أقوم بحل الواجبات المدرسية!
      ولكن سأساعد بشكل بسيط

      المطلوب حسب السيناريو المطروح نظام لإدارة سجلات مستشفى
      من الواضح المطلوب هو عمل ٥ جداول:
      المرضى/الأطباء/المواعيد/الوصفات الطبية/الأدوية

      كل جدول له عدة حقول مذكورة بشكل صريح بالسيناريو

      بعد إنشاء الجداول والحقول يتم عمل العلاقات وهي كالتالي:
      جدول المرضى مرتبط بجدول المواعيد بعلاقة واحد إلى متعدد
      جدول الأطباء مرتبط بجدول المواعيد بعلاقة واحد إلى متعدد
      وهكذا يتم إنشاء علاقة متعدد إلى متعدد بين جدول المرضى والأطباء من خلال علاقة كل منهما بجدول المواعيد
      ثم جدول المواعيد مرتبط بجدول الوصفات الطبية بعلاقة واحد إلى متعدد
      وجدول الوصفات الطبية مرتبط بجدول الأدوية بعلاقة واحد إلى متعدد
      طبعا نحتاج إلى إضافة المفتاح الأجنبي FK عند إنشاء العلاقات

      وأخيرا الطريقة العلمية والصحيحة هو تحليل السيناريو بشكل دقيق ثم رسمه على ورقة باستخدام قلم الرصاص مثلا
      قبل البدء برسمه باستخدام برامج الكمبيوتر.

      إعجاب

اترك رد

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

WordPress.com Logo

أنت تعلق بإستخدام حساب WordPress.com. تسجيل خروج   / تغيير )

صورة تويتر

أنت تعلق بإستخدام حساب Twitter. تسجيل خروج   / تغيير )

Facebook photo

أنت تعلق بإستخدام حساب Facebook. تسجيل خروج   / تغيير )

Google+ photo

أنت تعلق بإستخدام حساب Google+. تسجيل خروج   / تغيير )

Connecting to %s