الصيغ المعيارية

Download Report

Transcript الصيغ المعيارية

‫‪ ‬الهدف من تصميم قاعدة البيانات‪:‬‬
‫‪ ‬زيادة الكفاءة‬
‫يجب أن تكون المعلومات منتظمة بشكل يدعم الكفاءة‪:‬‬
‫‪ .1‬تقليل التكرار‪ ،‬يجب فصل المعلومات التي تتكرر بكل سجل ووضعها‬
‫في جدول مستقل حتى نتجنب التكرار‪.‬‬
‫مثال ‪ :‬في جدول الزيارات للمستشفى فإن رقم المريض يحل محل اسم‬
‫المريض ومعلومات االتصال والمنطقة السكنية بحيث أننا ال نحتاج‬
‫إلى تكرار هذه البيانات بكل سجل للزيارة‪.‬‬
‫‪2‬‬
‫‪T.A.Mona Alawadh‬‬
‫‪ .2‬تقليل مدخالت البيانات المفقودة ‪.‬‬
‫المعلومات المستحيلة منطقيا ً يتم تحويلها إلى جدول آخر حتى ال ُنجبر على‬
‫تركها فارغة‪ ،‬على سبيل المثال‪ ،‬حيث أنه من المستحيل وجود ذكر‬
‫حامل فال بد من وجود معلومات عن الحمل في جدول آخر غير‬
‫معلومات النوع بحيث ال تكون هناك حاجة إلى إدخال معلومات في‬
‫مجال الحمل بالنسبة للذكور‪.‬‬
‫‪ ‬السماح للمستخدمين بالوصول إلى البيانات دون معرفة موقعها‪.‬‬
‫يجب أن يسمح للمستخدم بالبحث عن المعلومات في مجال واحد ال أن‬
‫يخمن أي مجال آخر يحتوي على نفس هذه المعلومات‪.‬‬
‫‪3‬‬
‫‪T.A.Mona Alawadh‬‬
‫‪‬‬
‫ماهي الصيغة المعيارية؟‬
‫الصيغة المعيارية هي نهج من أسفل إلى أعلى لتصميم قاعدة البيانات والتي تبدأ‬
‫عن طريق دراسة العالقات بين الصفات لتحديد ما إذا استوفت أو تعارضت‬
‫مع متطلبات النموذج العادي‪.‬‬
‫‪ ‬الصيغة المعيارية هي عملية تخليص قاعدة البيانات من التكرار الغير مسوغ‬
‫للبيانات باالعتماد على قوانين االستنتاج واالعتمادية الوظيفية ويتم ذلك على‬
‫عدة مراحل‪.‬‬
‫‪ ‬عملية الوصول إلى الصيغة المعيارية للعالقة تتطلب تحليل للعالقة بشرط أن‬
‫يكون هذا التحليل قابل لالنعكاس‪.‬‬
‫‪4‬‬
‫‪T.A.Mona Alawadh‬‬
‫‪ ‬لماذا نحتاج إلى الصيغ معيارية؟‬
‫‪ ‬المرونة‪.‬‬
‫فهو بناء يدعم العديد من الطرق للوصول إلى البيانات‪.‬‬
‫‪ ‬سالمة قاعدة البيانات‪.‬‬
‫تمنع مشاكل تكرار البيانات ( ‪ )Data anomalies‬تسبب إشكالية في ‪:‬‬
‫‪ .1‬الحذف‬
‫‪ .2‬اإلضافة‬
‫‪ .3‬التعديل‬
‫‪ ‬الكفاءة‪.‬‬
‫تمنع تكرار البيانات وتوفر مساحة‪.‬‬
‫‪5‬‬
‫‪T.A.Mona Alawadh‬‬
‫‪ ‬تصف العالقة بين الصفات في العالقة (الجدول)‬
‫لو أخذنا ‪ A‬و ‪ B‬صفات في العالقة ‪R‬‬
‫نقول أن ‪ B‬تعتمد اعتمادا وظيفيا على ‪ A‬ونمثل هذا االعتماد بالرمز ‪B‬‬
‫هذا يعني أن قيمة ‪ A‬تحدد قيمة ‪. B‬‬
‫‪B‬‬
‫معتمد‬
‫‪‬‬
‫‪6‬‬
‫‪B is functionally‬‬
‫‪dependent on A‬‬
‫‪A‬‬
‫‪A‬‬
‫محدد‬
‫من خالل تحديد االعتمادية نستطيع أن نحدد المكان الذي توضع فيه الصفة بالتالي‬
‫يؤدي ذلك إلى وضع البيانات في المكان الصحيح ونتخلص من مشاكل تكرار‬
‫البيانات (‪)anomalies‬‬
‫‪T.A.Mona Alawadh‬‬

StaffNo
StaffNo SL1

Position
Manager
position is functionally
dependent on StaffNo
position
manager
StaffNo is not functionally
dependent on position
1:1

StaffNo
Staff number SG2
Staff number SL6
T.A.Mona Alawadh
1:M X
7
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫إذا كان لدينا ‪ A and B‬صفات لعالقة فإننا نقول‪:‬‬
‫‪ B‬معتمد اعتماد كلي على ‪ )Full dependency(A‬إذا كان ‪ B‬يعتمد على ‪ A‬وال‬
‫يعتمد على أي جزء من ‪.A‬‬
‫‪ B‬معتمد اعتماد جزئي على ‪ )Partial dependency(A‬إذا كان باإلمكان إزالة‬
‫بعض الصفات من ‪ A‬وال تزال االعتمادية الوظيفية قائمة وصحيحة‪.‬‬
‫‪Partial dependency‬‬
‫‪Full dependency‬‬
‫‪8‬‬
‫‪BranchNo‬‬
‫‪RentDate‬‬
‫‪T.A.Mona Alawadh‬‬
‫‪StaffNo, Snam‬‬
‫‪‬‬
‫‪ClientNo, PropertyNo‬‬
‫‪‬‬
‫‪‬‬
‫االعتمادية المتعدية ‪:‬‬
‫لدينا ‪ A‬و ‪ B‬و ‪ C‬صفات لعالقة ما فإذا كان‪:‬‬
‫‪C, then A‬‬
‫‪C‬‬
‫‪ ‬مثال‪:‬‬
‫رقم الفرع‬
‫رقم الموظف‬
‫عنوان الفرع‬
‫رقم الفرع‬
‫عنوان الفرع‬
‫رقم الموظف‬
‫‪9‬‬
‫‪T.A.Mona Alawadh‬‬
‫‪B and B‬‬
‫‪A‬‬
‫‪‬‬
1NF
2NF
3NF
BCNF
4NF
5NF
Higher
Normal
Form
T.A.Mona Alawadh
10
:)Unnormalized form (UNF) ( ‫ العالقة الغير طبيعية‬
.‫هي العالقة التي تحتوي على مجموعة مكررة من البيانات‬
Family
CLIENT_PROPERTY
ClientNo
Name
PropertyNo
ID
Street
Address
Zip
First
_Person
Second
_Perso
n
CR76
John Key
PG4
PG16
1001
1319 Ozkn
221
Jim
Jill
CR56
Aline Stewart
PG4
PG36
2000
14 Yates
222
George
Janet
PG16
T.A.Mona Alawadh
11
‫‪‬‬
‫الصيغة المعيارية األولى (‪ :)1NF‬هي العالقة التي يكون فيها تقاطع‬
‫كل عمود مع صف يعطي قيمة واحدة فقط‪.‬‬
‫‪ ‬الصيغة المعيارية األولى ال تسمح بتكرار المجاالت في نفس الصف‬
‫وذلك يعني عدم تخزين نفس المعلومات في مجالين مختلفين‪ .‬مثل في‬
‫الجدول السابق تم إدراج أفراد األسرة في مجالين‪ ،‬والصيغة المعيارية‬
‫األولى ال تسمح بذلك‪.‬‬
‫‪12‬‬
‫‪T.A.Mona Alawadh‬‬
‫‪ ‬حتى نحول إلى الصيغة المعيارية األولى‪:‬‬
‫إزالة المجموعات المتكررة‪:‬‬
‫‪ ‬إدخال البيانات المناسبة في الخاليا الفارغة‪.‬‬
‫‪ ‬تسوية المجاالت في العالقة‪.‬‬
‫‪ ‬وضع البيانات المتكررة مع نسخة من المفتاح الرئيس في عالقة‬
‫منفصلة‪ .‬تحديد مفتاح أساسي لكل من العالقات الجديدة‪.‬‬
‫‪13‬‬
‫‪T.A.Mona Alawadh‬‬
CLIENT_PROPERTY
CLIENT_PROPERTY
Name
ClientNo
ClientNo
CR76
John Key
PG4
PG16
CR56
Aline Stewart
PG4
PG36
CR76
CR76
John Key
John Key
PG4
PG16
CR56
Aline Stewart
CR56
CR56
Aline Stewart
Aline Stewart
PG4
PG36
PropertyNo
PG16
PG16
1NF relation
UNF relation
PROPERTY
CLIENT
ClientNo
Name
PropertyNo
Name
ClientNo PropertyNo
CR76
John Key
CR76
CR76
CR56
Aline Stewart
CR56
1NF relation
CR56
CR56
PG4
PG16
PG4
PG36
PG16
1NF relation
T.A.Mona Alawadh
14
Family
Household
ID
Number
Street
Zip
Name
M_ID
1001
1319
Ozkan
221
Jim
1
1001
1319
Ozkan
221
Jill
2
2000
14
Yates
222
George
1
2000
14
Yates
222
Janet
2
ID
Street
Address
Zip
First
_Person
Secon
d
_Perso
n
1001
1319
Ozkn
221
Jim
Jill
2000
14 Yates
222
George
Janet
UNF relation
1NF relation
Family_Member
Family_Address
ID
Number Street
1001
1319
Ozkan 221
2000
14
Yates
1NF relation
Zip
222
ID
Name
M_ID
1001
Jim
1
1001
Jill
2
2000
George
1
2000
Janet
2
1NF relation
T.A.Mona Alawadh
15
UNF relation
T.A.Mona Alawadh
16
‫‪ ‬الصيغة المعيارية الثانية (‪:)2NF‬‬
‫نقول عن الجدول أنه في الصيغة المعيارية الثانية إذا كان‪:‬‬
‫‪ .1‬الجدول في الصيغة المعيارية األولى‪.‬‬
‫‪ .2‬كل صفة في الجدول (غير المفتاح الرئيس) تعتمد اعتمادا كلي على المفتاح‬
‫الرئيس‪.‬‬
‫‪‬‬
‫‪.1‬‬
‫‪.2‬‬
‫‪.3‬‬
‫‪17‬‬
‫‪: 2NF‬‬
‫عند التحويل من ‪1NF‬‬
‫نحدد االعتمادية الوظيفية‪.‬‬
‫كتابة االعتمادية الوظيفية الجزئية في جداول مستقلة (أي الصفات التي تعتمد‬
‫على جزء من المفتاح الرئيس)‪.‬‬
‫كتابة االعتمادية الوظيفية الكلية في جداول مستقلة (أي الصفات تعتمد‬
‫اعتمادا كلي على المفتاح الرئيس)‪.‬‬
‫‪T.A.Mona Alawadh‬‬
T.A.Mona Alawadh
18
T.A.Mona Alawadh
19
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫نقول عن الجدول أنه في الصيغة المعيارية الثالثة (‪)3NF‬‬
‫إذا كان الجدول في الصيغة المعيارية الثانية‪.‬‬
‫إذا كان الجدول ال يحتوي على اعتمادية متعدية (أي ال توجد صفة تعتمد‬
‫بشكل متعدي على المفتاح الرئيس)‪.‬‬
‫‪:3NF‬‬
‫‪ ‬عند التحويل من ‪2NF‬‬
‫نقوم بإزالة كل اعتمادية متعدية ووضعها في عالقة مستقلة بحيث تحتوي‬
‫العالقة على كال المحدد والمعتمد‪.‬‬
‫‪20‬‬
‫‪T.A.Mona Alawadh‬‬
‫متعدية‬
T.A.Mona Alawadh
21
T.A.Mona Alawadh
22
T.A.Mona Alawadh
23
T.A.Mona Alawadh
24