0% found this document useful (0 votes)
23 views11 pages

Intro Database NF Part5

Uploaded by

elabani1980
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
23 views11 pages

Intro Database NF Part5

Uploaded by

elabani1980
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

‫أ‪.

‬خالد العباني‬ ‫اساسيات قواعد البيانات‬

‫كلية تقنيات الحاسوب – بنغازي‬

‫التخصصات المستهدفة تخصص ‪:‬‬

‫هندسة البرمجيات – نظم المعلومات – الذكاء االصطناعي‪-‬الشبكات‬

‫المادة ‪:‬‬

‫اساسيــات قواعـــد البيــانــات‬

‫‪Fundamentals OF Database‬‬

‫أ‪.‬خالد العباني‬

‫‪Page 1 of 11‬‬
‫أ‪.‬خالد العباني‬ ‫اساسيات قواعد البيانات‬

‫الفصل الرابع ‪ -‬الجزء الثاني‬

‫العالقات ومجموعات العالقات ( ‪:)Relationships and Relationship sets‬‬

‫العالقة هي الرابط بين أكثر من كيان‪ ،‬ويمكن أن يكون للعالقة واصفات تماماً كالكيان فمثالً العالقة‬
‫بين قرار إجازة وموظف يمكن أن يكون لها تاريخ بدء ومدة وغير ذلك من الواصفات‪.‬‬

‫‪CHEN Model‬‬
‫‪Connectivities‬‬
‫‪1‬‬ ‫‪M‬‬
‫‪PROFESSOR‬‬ ‫)‪(1,4‬‬
‫‪teaches‬‬
‫)‪(1,1‬‬ ‫‪CLASS‬‬

‫‪Cardinalities‬‬

‫‪Crow’s Foot Model‬‬


‫‪Connectivities‬‬
‫‪PROFESSOR‬‬ ‫‪CLASS‬‬
‫‪teaches‬‬

‫‪Cardinalities‬‬

‫‪( Connectivity‬أو ‪ )Ordinality‬و ‪Cardinality‬‬

‫‪Page 2 of 11‬‬
‫أ‪.‬خالد العباني‬ ‫اساسيات قواعد البيانات‬

‫تحويل نموذج الكينونة‪/‬العالقة إلي قاعدة بيانات عالئقيه‬

‫‪Relational DB Design ER-to-Relational Mapping‬‬

‫عملية التحويل هي عبارة عن خطوات محددة يتبعها مصمم قواعد البيانات لتحويل نموذج‬
‫الكينونة‪/‬العالقة الي مخطط قواعد البيانات العالئقية‪.‬‬

‫)‪(Mapping ERD to relational schema‬‬

‫تعتمد عملية التحويل علي فهم المصمم للمبادئ التي تم عرضها ومناقشتها سابقاً والخاصة بالمفتاح‬
‫األساسي و المفتاح األجنبى و أنواع الكيانات والعالقات وأنواع االرتباطات بين العالقات‪.‬‬

‫خطوات تحويل مخطط عالقات الكائنات إلى مخطط قاعدة البيانات ‪:‬‬

‫•تمثل كل كينونة في جدول خاص‪ ,‬وتدرج كل صفاتها ما عدا الصفات متعددة القيم‪.‬‬

‫جدول الكينونة الضعيفة يضاف إليه الصفة المفتاح للكينونة التي تتبع لها الكينونة‬ ‫‪-‬‬
‫الضعيفة‪.‬‬
‫في حالة الصفات متعددة القيم يتم إنشاء جدول جديد ويضاف لهذا الجدول الصفة‬ ‫‪-‬‬
‫المفتاح إلى جانب الصفة متعددة القيم وتكون الصفتان معا المفتاح األساسي لهذا الجدول‬
‫الجديد‪.‬‬

‫•يحدد نوع العالقة قانون تواجد المفتاح األجنبي وتكون كالتالي‪:‬‬

‫في العالقة ‪ 1:1‬يضاف المفتاح األساسي للكينونة صاحبة المشاركة الجزئية إلى جدول‬ ‫‪-‬‬
‫الكينونة صاحبة المشاركة الكلية‪.‬‬

‫‪Page 3 of 11‬‬
‫أ‪.‬خالد العباني‬ ‫اساسيات قواعد البيانات‬

‫في العالقة ‪ M:M‬يتم إنشاء جدول جديد يضاف إليه المفاتيح األساسية للجدولين‬ ‫‪-‬‬
‫المشتركين في العالقة كمفاتيح أجنبية وتضاف إليه أي صفات متعلقة بالعالقة ‪.‬يكون‬
‫المفتاح األساسي للجدول الجديد مركب من المفاتيح األجنبية‪.‬‬
‫في العالقة ‪ 1 : M‬يضاف المفتاح األساسي للجدول صاحب المشاركة ‪ 1‬إلى الجدول‬ ‫‪-‬‬
‫صاحب المشاركة‪ M‬كمفتاح أجنبي‪.‬‬
‫بمجرد النظر لخطوات السابقة ربما نجد صعوبة في استيعاب خطوات التحويل ولكن مع سرد مثال يوضح‬
‫تحويل نمودج الكينونة الى مخطط قاعدة بيانات ومع االطالع هذا الموضوع من اكثر من مصدر نتحصل‬
‫على معرفة بقدر مناسب والمام جيد لعملية التحويل مما يكتسب المطلع على معلومات وافية تجعله يمتلك‬
‫خبرة في نمادج البيانات وتحويله على مخططات قواعد البيانات ‪.‬‬

‫سوف نوضح مثال يوضح خطوات التحويل خطوة خطوة ‪:‬‬

‫‪ .1‬لكل كينونة عادية ( قوية) )‪ (E‬في شكل الكينونة‪/‬العالقة يتم عمل اآلتي‪:‬‬

‫إنشاء جدول عالئقي (‪ )R‬يحتوي علي جميع الصفات البسيطة الموجودة في الكينونة‬ ‫•‬
‫(‪.)E‬‬

‫الصفات المركبة الموجودة في (‪ )E‬يتم تمثيلها في الجدول العالئقي (‪ )R‬عن طريق‬ ‫•‬
‫تمثيل صفاتها البسيطة التي تكون الصفة المركبة (أي ال تظهر الصفات المركبة‬
‫للكينونة (‪ )E‬في الجدول العالئقي (‪.)R‬‬

‫مفتاح الجدول العالئقي (‪ )R‬هو مفتاح الكينونة (‪ )E‬أو أحد المفاتيح المؤهلة في حالة‬ ‫•‬
‫وجود أكثر من مفتاح للكينونة (‪.)E‬‬

‫المفاتيح الغريبة ونعوت العالقات إن وجدت اليتم التعامل معها في هذه الخطوة‬ ‫•‬

‫‪Page 4 of 11‬‬
‫أ‪.‬خالد العباني‬ ‫اساسيات قواعد البيانات‬

‫‪ .2‬لكل كينونة ضعيفة ( ‪ )W‬في شكل الكينونة‪/‬العالقة يتم عمل اآلتي‪:‬‬

‫إنشاء جدول عالئقي (‪ )R‬يحتوي علي جميع الصفات البسيطة الموجودة في الكينونة‬ ‫•‬
‫(‪.)W‬‬

‫الصفات المركبة الموجودة في (‪ )W‬يتم تمثيلها في الجدول العالئقي (‪ )R‬عن طريق‬ ‫•‬
‫تمثيل صفاتها البسيطة التي تكون الصفة المركبة كما تم في الخطوة األولي‪.‬‬

‫إضافة المفتاح األساسي للكينونة المرتبط مع الكيان (‪ )W‬والمعرف له الي الجدول‬ ‫•‬
‫العالئقي (‪ )R‬مع اعتباره مفتاح أجنبي يربط (‪ )W‬مع الكينونة المعرفه له‪.‬‬

‫مفتاح العالقة (‪ )R‬هو المفتاح الجزئي للكيان (‪ + )W‬المفتاح األساسي‬ ‫•‬


‫للكينونة(المالكة) المرتبطة مع الكينونة (‪ )W‬والمعرف له (الذي تم إضافته كمفتاح‬
‫أجنبي للكينونة ( ‪.)W‬‬

‫الفصل السادس‬

‫‪Page 5 of 11‬‬
‫أ‪.‬خالد العباني‬ ‫اساسيات قواعد البيانات‬

‫‪ .3‬لكل عالقة ( ‪ ) R‬من النوع ‪ 1:1‬في شكل الكينونة‪/‬العالقة يتم عمل اآلتي‪:‬‬

‫تحديد الكينونتين المرتبطان معاً عن طريق العالقة (‪ .)R‬لتكونا جدولين عالئقيين ‪.S,T‬‬ ‫•‬

‫اختيار واحدة من ( ‪ )S,T‬ولتكن ‪ S‬قم بإضافة المفتاح األساسي للجدول العالئقي األخر‬ ‫•‬
‫‪ T‬كمفتاح غريب (أجنبي) في ‪.S‬‬

‫من األفضل اختيار الكينونة المرتبطة ارتباطاً كلياً بالعالقة (‪ )R‬ليتم ضم المفتاح‬ ‫•‬
‫األساسي للعالقة األخرى إليه كمفتاح أجنبي‪.‬‬

‫إذا كان الكينونتين مرتبطتين ارتباطا كلياً بالعالقة (‪ )R‬فيمكن اختيار أي منهما لضم‬ ‫•‬
‫المفتاح األساسي للكينونة األخرى إليه كمفتاح أجنبي وإن كان من الممكن دمج‬
‫الكينونتين ‪ S,T‬معاً ليصبحا كياناً واحداً‪.‬‬

‫‪Page 6 of 11‬‬
‫أ‪.‬خالد العباني‬ ‫اساسيات قواعد البيانات‬

‫‪ .4‬لكل عالقة ثنائية عادية ( ‪ ) R‬من النوع ‪ 1:N‬نقوم بعمل اآلتي‪:‬‬

‫• نحدد الجدول العالئقي ‪ S‬والذي يمثل الكينونة الموجودة عند الجانب ‪ N‬في العالقة ( ‪.) R‬‬

‫• إضافة المفتاح األساسي للكينونة األخرى المرتبط بالعالقة ( ‪ ) R‬كمفتاح أجنبي في الجدول‬
‫العالئقي ‪.S‬‬

‫نضيف أية صفات موجودة علي العالقة ( ‪ ) R‬للجدول العالئقي ‪.S‬‬ ‫•‬

‫‪Page 7 of 11‬‬
‫أ‪.‬خالد العباني‬ ‫اساسيات قواعد البيانات‬

‫‪ .5‬لكل عالقة ثنائية عادية ( ‪ ) R‬من النوع ‪ M:N‬نقوم بعمل اآلتي‪:‬‬

‫ننشأ جدول عالئقي جديدة ‪ S‬تمثل العالقة ( ‪.) R‬‬ ‫•‬

‫إضافة المفاتيح األساسية للكينونتين المرتبطين بالعالقة ( ‪ ) R‬كمفاتيح أجنبية في‬ ‫•‬
‫العالقة ‪.S‬‬

‫نضيف أية صفات موجودة علي العالقة ( ‪ ) R‬للجدول العالئقي ‪.S‬‬ ‫•‬

‫المفتاح األساسي لجدول لعالئقي ‪ S‬هو مجموعة المفاتيح األجنبية التي تم ضمها إلي‬ ‫•‬
‫‪ S‬وتمثل المفاتيح األساسية للكينونتين المرتبطين بالعالقة ( ‪.) R‬‬

‫‪Page 8 of 11‬‬
‫أ‪.‬خالد العباني‬ ‫اساسيات قواعد البيانات‬

‫‪ .6‬لكل عالقة (‪ )R‬من الدرجة )‪( (N‬أي ثالثية أو أعلي) نقوم بعمل اآلتي‪:‬‬

‫ننشأ جدول عالئقي جديدة ( ‪ ) S‬لهذه العالقة ( ‪.) R‬‬ ‫•‬

‫إضافة المفاتيح األساسية للكيانات المرتبطة بالعالقة ( ‪ ) R‬كمفاتيح أجنبية في الجدول‬ ‫•‬
‫العالئقي ( ‪.) S‬‬

‫نضيف أية صفات موجودة علي العالقة ( ‪ ) R‬للجدول العالئقي ‪.S‬‬ ‫•‬

‫المفتاح األساسي للعالقة ( ‪ )S‬هو مجموعة المفاتيح األجنبية التي تم ضمها إلي ( ‪)S‬‬ ‫•‬
‫وتمثل المفاتيح األساسية للكيانات المرتبطة بالعالقة ( ‪.) R‬‬

‫‪Page 9 of 11‬‬
‫أ‪.‬خالد العباني‬ ‫اساسيات قواعد البيانات‬

‫‪Page 10 of 11‬‬
‫أ‪.‬خالد العباني‬ ‫اساسيات قواعد البيانات‬

‫‪ .7‬لكل صفة ‪ A‬متعددة القيم )‪ (multivalued‬يتم عمل األتي‪:‬‬

‫ننشأ جدول عالئقي جديد ( ‪ ) R‬لهذه الصفة ‪.A‬‬ ‫•‬

‫إضافة الصفة ‪ A‬إلي الجدول عالئقي ( ‪ ) R‬كصفة لها‪.‬‬ ‫•‬

‫إضافة المفتاح األساسي للكينونة التي تحتوي علي الصفة ‪ A‬كمفتاح أجنبي في الجدول‬ ‫•‬
‫عالئقي ( ‪.) R‬‬

‫المفتاح األساسي للجدول عالئقي ( ‪ ) R‬هو المفتاح األجنبي الذي تم ضمه إلي ( ‪) R‬‬ ‫•‬
‫باإلضافة إلي الصفة ‪.A‬‬

‫‪Page 11 of 11‬‬

You might also like