مفاهیم پایگاه داده های رابطه ای و نرمال سازی
نوع فایل:ورد
تعداد صفحات:253
اندازه فایل:3.25مگابایت
فهرست مطالب
عنوان صفحه
فصل پنجم – دیگر زبانهای رابطه ای ………………………………………………………………………………………………………………. 1
5-1- حساب رابطه ای چند تایی ……………………………………………………………………………………………………………………….. 3
5-1-1- طرح مثال …………………………………………………………………………………………………………………………………………. 4
5-1-2- تعاریف رسمی ……………………………………………………………………………………………………………………………………. 9
5-1-3- اطمینان در بیان …………………………………………………………………………………………………………………………………… 11
5-1-4- زبان های توانای پر معنی ……………………………………………………………………………………………………………………… 12
5-2- قلمرو حساب رابطه ای …………………………………………………………………………………………………………………………… 13
5-2-1- تعریف رسمی ………………………………………………………………………………………………………………………………….. 13
5-2-2- پرس وجوهای نمونه …………………………………………………………………………………………………………………………… 14
5-2-3- ایمنی عبارات ……………………………………………………………………………………………………………………………………. 16
5-2-4- قدرت بیانی زبان ……………………………………………………………………………………………………………………………….. 18
5-3- پرس وجو از طریق مثال ………………………………………………………………………………………………………………………….. 19
5-3-1-جدول های ساختمان …………………………………………………………………………………………………………………………… 20
5-3-2- پرس وجو هایی روی یک رابطه …………………………………………………………………………………………………………… 20
5-3-3- پرس وجو روی رابطه های جداگانه ……………………………………………………………………………………………………… 25
5-3-4- جعبه وضعیت …………………………………………………………………………………………………………………………………… 27
5-3-5- رابطه نتیجه ………………………………………………………………………………………………………………………………………. 30
5-3-6- QBEدر مایکروسافت اکسس …………………………………………………………………………………………………………….. 32
5-4- دیتالوگ …………………………………………………………………………………………………………………………………………….. 35
5-4-1- ساختار اساسی ………………………………………………………………………………………………………………………………….. 35
5-4-2- ترکیب دستورات دیتالوگ …………………………………………………………………………………………………………………. 38
5-4-3- ترکیب های معنایی دیتالوگ غیر بازگشتی ……………………………………………………………………………………………. 42
عنوان صفحه
5-4-3-1- ترکیب های معنایی یک دستور ………………………………………………………………………………………………………… 42
5-4-3-2- ترکیب معنایی برنامه ………………………………………………………………………………………………………………………. 44
5-4-4- ایمنی ……………………………………………………………………………………………………………………………………………… 47
5-4-5- عملیاتهای رابطه ای در دیتالوگ ………………………………………………………………………………………………………….. 49
5-4-6- بازگشتی در دیتالوگ ………………………………………………………………………………………………………………………… 51
5-4-7- قدرت بازگشتی ……………………………………………………………………………………………………………………………….. 56
5-5- خلاصه ………………………………………………………………………………………………………………………………………………. 59
مرور اصطلاحات ………………………………………………………………………………………………………………………………………… 60
تمرین مهارت ……………………………………………………………………………………………………………………………………………… 61
تمرین ها ……………………………………………………………………………………………………………………………………………………. 63
نکاتی مربوط به فهرست کتاب ………………………………………………………………………………………………………………………… 66
ابزارها ……………………………………………………………………………………………………………………………………………………….. 67
بخش دوم :طراحی پایگاه داده ……………………………………………………………………………………………………………………… 68
فصل ششم: طراحی پایگاه داده مدل E-R …………………………………………………………………………………………………… 70
6-1- مفهوم کلی فرایند طراحی ……………………………………………………………………………………………………………………… 71
6-1-1- مراحل طراحی ………………………………………………………………………………………………………………………………. 72
6-1-2- طراحی جایگزین ها ………………………………………………………………………………………………………………………… 74
6-2- مدل موجودیت رابطه …………………………………………………………………………………………………………………………. 75
6-2-1- گروه موجودیت …………………………………………………………………………………………………………………………… 76
6-2-2- گروه رابطه ها ……………………………………………………………………………………………………………………………….. 78
6-2-3- صفات …………………………………………………………………………………………………………………………………………. 83
6-3- محدودیت ها …………………………………………………………………………………………………………………………………….. 87
6-3-1- ترسیم کاردینالیتی ………………………………………………………………………………………………………………………….. 87
6-3-2- کلیدها …………………………………………………………………………………………………………………………………………. 89
6-3-2-1- گروه موجودیت ها …………………………………………………………………………………………………………………….. 90
6-3-2-2- گروه رابطه ها ……………………………………………………………………………………………………………………………. 91
6-3-3- مشارکت محدودیت ها …………………………………………………………………………………………………………………. 93
6-4- نمودارهای موجودیت – رابطه ……………………………………………………………………………………………………………. 93
6-5- نتایج طراحی موجودیت – رابطه …………………………………………………………………………………………………………. 102
6-5-1- استفاده از گروه موجودیت ها در مقابل صفات ………………………………………………………………………………….. 102
6-5-2- استفاده از گروه موجودیت ها به جای گروه رابطه ها ………………………………………………………………………….. 105
6-5-3- گروه رابطه های n-ary در مقایل دوگانه ………………………………………………………………………………………… 106
عنوان صفحه
6-5-4- جایگاه صفات رابطه ……………………………………………………………………………………………………………………. 109
6-6- گروه موجودیت ضعیف …………………………………………………………………………………………………………………… 111
6-7- ویژگیهای E-R گسترده …………………………………………………………………………………………………………………. 114
6-7-1- ویژه کاری …………………………………………………………………………………………………………………………………. 115
6-7-2 – عمومی سازی ……………………………………………………………………………………………………………………………. 118
6-7-3- صفات وراثتی …………………………………………………………………………………………………………………………….. 120
6-7-4- محدودیت ها در عمومی سازی ……………………………………………………………………………………………………… 121
6-7-5- ترکیب ……………………………………………………………………………………………………………………………………… 125
6-7-6- نمادهای E-R جایگزین ………………………………………………………………………………………………………………. 128
6-8- طراحی پایگاه داده برای پروژه بانکداری …………………………………………………………………………………………….. 130
6-8-1- جایگزین های طرح E-R ……………………………………………………………………………………………………………… 131
6-8-2- الزامات داده برای پایگاه داده بانک …………………………………………………………………………………………………. 132
6-8-3- گروه های موجودیت برای پایگاه داده بانک ……………………………………………………………………………………. 134
6-8-4- گروه های رابطه برای پایگاه داده بانک ……………………………………………………………………………………………. 135
6-8-5- نمودار E-R برای پایگاه داده بانک ……………………………………………………………………………………………….. 136
6-9- تبدیل شدن به الگوی رابطه ای ………………………………………………………………………………………………………….. 136
6-9-1- ارائه گروه های موجودیت قوی ……………………………………………………………………………………………………… 138
6-9-2- ارائه گروه های موجودیت ضعیف …………………………………………………………………………………………………. 139
6-9-3 – ارائه گروه های رابطه …………………………………………………………………………………………………………………. 140
6-9-3-1- الگوهای زائد ………………………………………………………………………………………………………………………….. 142
6-9-3-2- ترکیب الگوها …………………………………………………………………………………………………………………………. 142
6-9-4- صفات ترکیبی و چند مقداری ……………………………………………………………………………………………………….. 144
6-9-5- ارائه روش عمومی سازی …………………………………………………………………………………………………………….. 145
6-9-6- ارائه دادن ترکیب ……………………………………………………………………………………………………………………….. 147
6-9-7- الگوی رابطه برای پروژه بانکداری …………………………………………………………………………………………………. 148
6-10- جنبه های دیگر طراحی پایگاه داده ………………………………………………………………………………………………….. 149
6-10-1- محدودیت داده ها وطراحی پایگاه داده رابطه ای ……………………………………………………………………………. 150
6-10-2- الزامات کاربردی : پرس وجوها ، کارایی ………………………………………………………………………………………. 151
6-10-3- الزامات کنترل …………………………………………………………………………………………………………………………. 153
6-10-4- جریان داده ها ………………………………………………………………………………………………………………………….. 153
6-10-5- موضوعات دیگر در طراحی پایگاه داده ……………………………………………………………………………………….. 154
6-11- زبان مدل سازی یکپارچه UML …………………………………………………………………………………………………… 156
عنوان صفحه
6-12- خلاصه ……………………………………………………………………………………………………………………………………….. 160
مروری بر اصطلاحات ………………………………………………………………………………………………………………………………. 163
تمرین مهارت …………………………………………………………………………………………………………………………………………. 165
تمرینات …………………………………………………………………………………………………………………………………………………. 170
منابع ……………………………………………………………………………………………………………………………………………………… 173
ابزارها ……………………………………………………………………………………………………………………………………………………. 173
فصل هفتم: طراحی پایگاه داده رابطه ای ……………………………………………………………………………… 175
7-1- ویژگی های طراحی های رابطه ای خوب …………………………………………………………………………………………… 176
7-1-1- طراحی جایگزین : الگوهای بزرگتر ……………………………………………………………………………………………….. 177
7-1-2- طراحی جایگزین : الگوهای کوچکتر …………………………………………………………………………………………….. 181
7-2- محدوده های غیر قابل تجزیه واولین شکل نرمال ………………………………………………………………………………….. 185
7-3- تجزیه با استفاده از وابستگی های عملیاتی …………………………………………………………………………………………. 188
7-3-1- کلیدها و وابستگی های عملیاتی ……………………………………………………………………………………………………. 188
7-3-2- شکل نرمال Boyce-codd ………………………………………………………………………………………………………. 192
7-3-3- BCNF و حفاظت وابستگی ……………………………………………………………………………………………………… 193
7-3-4- سومین شکل نرمال …………………………………………………………………………………………………………………… 197
7-3-5- شکل های نرمال بیشتر ………………………………………………………………………………………………………………… 200
7-4- تئوری وابستگی عملیاتی …………………………………………………………………………………………………………………. 201
7-4-1- بستار مجموعه وابستگی های عملیاتی ……………………………………………………………………………………………. 201
7-4-2- بستار گروه های صفات …………………………………………………………………………………………………………….. 205
7-4-3- پوشش استاندارد ……………………………………………………………………………………………………………………… 208
7-4-4- تجزیه بی نقص ………………………………………………………………………………………………………………………… 213
7-4-5- حفاظت وابستگی ………………………………………………………………………………………………………………………. 214
7-5- تجزیه با استفاده از وابستگی های عملیاتی ………………………………………………………………………………………….. 217
7-5-1- تجزیه BCNF ………………………………………………………………………………………………………………………… 217
7-5-1-1- آزمون BCNF …………………………………………………………………………………………………………………… 218
7-5-1-2- الگوریتم تجزیه BCNF …………………………………………………………………………………………………………. 220
7-5-2- تجزیه 3NF ……………………………………………………………………………………………………………………………. 222
7-5-3- مقایسه BCNF و 3NF …………………………………………………………………………………………………………….. 225
7-6- تجزیه با استفاده از وابستگی های چند مقداری ……………………………………………………………………………………. 226
7-6-1- وابستگی های چند مقداری …………………………………………………………………………………………………………. 227
7-6-2- شکل نرمال چهارم ……………………………………………………………………………………………………………………. 230
عنوان صفحه
7-6-3- تجزیه 4NF …………………………………………………………………………………………………………………………….. 232
7-7- دیگر شکل های نرمال ……………………………………………………………………………………………………………………. 234
7-8- فرایند طراحی پایگاه داده ………………………………………………………………………………………………………………. 234
7-8-1- مدل E-R و نرمال سازی ……………………………………………………………………………………………………………. 235
7-8-2- نام گذاری صفات و رابطه ها ………………………………………………………………………………………………………… 237
7-8-3- از نرمال درآوردن برای کارایی ……………………………………………………………………………………………………. 239
7-8-4- دیگر مباحث طراحی ………………………………………………………………………………………………………………….. 240
7-9- مدل سازی داده های موقتی …………………………………………………………………………………………………………….. 241
7-10- خلاصه ………………………………………………………………………………………………………………………………………. 245
مرور اصطلاحات …………………………………………………………………………………………………………………………………….. 246
تمرین مهارت ………………………………………………………………………………………………………………………………………… 248
تمرین …………………………………………………………………………………………………………………………………………………. 250
واژه نامه …………………………………………………………………………………………………………………………………………………
254
ما در فصل2 جبر رابطه اي را ارائه كرديم كه اشكال پايه اي در بسياري از مواردي هستند كه در زبان SQL Query استفاده مي شوند . جزئيات بيشتر در فصل هاي 3 و 4 ارائه شد . در اين فصل ابتدا دوزباني را كه بيشتر رسميت دارند را مطالعه مي كنيم يكي حساب رابطه اي چندتايي و يكي حساب رابطه اي حوزه . كه اين دو زبان رسمي زبان هايي هستند بر پاية پرس و جو[1] و مبتني بر منطق رياضي ، و اين دو زبان رسمي شكل پايه اي براي دو يا بيشتر زبان هاي دوستانه هستند ، كه بعداً در اين فصل QBE[2] و Datalog را مطالعه مي كنيم .
بر خلاف SQL و QBE يك زبان گرافيكي به گونه اي به شكل جداول مي باشد .QBE و جايگزينش خيلي مورد استفاده قرار مي گيرند در سيستمهاي پايگاه داده در كامپيوترهاي شخصي . Datalog يك نمونه تركيبي بعد از زبان Prolog دارد . هر چند در حال حاضر به صورت تجاري از اين دست آورد استفاده نمي شود . Datalog بيشتر در جستجوي سيستم هاي پايگاه داده اي مورد استفاده قرار مي گيرد .
براي QBE و Datalog ، ما ساختارها و مفاهيم بنيادي را سريع تر از يك كتاب راهنماي جامع كاربران براي اين زبان ها به دست مي آوريم ، عقيده بر اين است كه شخص يكي از اين زبان ها را انتخاب كند ، ممكن است در جزئيات متفاوت باشند يا ممكن است تنها يك زير مجموعه از تمام زبان ها را تأييد كند .
5-1 حساب رابطه اي چندتايي
وقتي كه ما يك عبارت جبري رابطه اي را مي نويسم . ما يك روالي را كه جوابهايي براي پرس و جو به وجود مي آورند را مهيا مي كنيم . در مقام مقايسه حساب رابطه اي چندتايي يك زبان تحقيقي غیر رویه ای اطلاعات خوبي را بدون دادن يك روال ويژه براي به دست آوردن آن اطلاعات ارائه مي دهد . يك پرس و جو در حساب رابطه اي چندتايي که مثل { t | p (t ) } بيان مي شود منظور اين است كه آن يك مجموعه اي از همه متغییرهائی چون t مي باشد به گونه اي كه p ( t ) مبتني بر آن درست باشد به ازاء همه t ها. در دنباله مطالبمان ، ما از t [A] براي مشخص كردن مقدار متغییر t بر روي صفت A استفاده مي كنيم و ما از r t براي مشخص كردن يك متغییر t كه در رابطه با r مي باشد ، استفاده مي نماييم.
قبل از اين كه ما يك تعريف رسمي از حساب رابطه اي چندتايي ارائه بدهيم ، ما به بعضي از پرس و جو ها که در جملات جبري رابطه اي در بخش 2-2 نوشته ایم برمي گرديم . به ياد آوريد كه پرس و جو ها از الگوي هاي زير پيروي مي كنند :
شاخه ( نام شاخه ـ شهر شاخه ـ موجودي ( دارائي ) )
خريدار ـ مشتري ( نام مشتري و جبر مشتري ، شهر مشتري )
وام ( شماره وام ـ نام شاخه ـ مقدار )
وام گيرنده ( نام مشتري ـ شماره وام )
حساب ( شماره حساب ـ نام شاخه ـ موجودي )
سپرده گذار ( نام مشتري ـ شماره حساب )
5- 1- 1- طرح مثال
پيدا كردن نام شاخه ، شماره وام ، مبلغ وام براي وام هاي بيشتر از 1200 دلار :
{loam ^ t [ amount ]> 1200 t½ t }
فرض كنيد كه ما خواسته باشيم فقط صفت ( شماره وام ) ، بيشتر از همه صفات رابطه وام باشد . براي نوشتن اين پرس و جو در حساب رابطه اي چندتايي ما به نوشتن يك توضيح نياز داريم . براي يك رابطه در اين طرح يا مدل ( شماره وام ) ما به چندتايي ها بر روي شماره وام نياز داريم هم چنانكه يك چندتايي در وام به وسيله يك صفت, مقداري بزرگتر از 1200 وجود دارد . براي بيان اين تقاضا ما به ساختار وجود داشتن از مطلق رياضي نياز داريم . نكته :
r ( Q (t) ) t
وجود يك متغییر t متعلق به r به گونه ای که Q (t) درست باشد . از اين نكات استفاده مي كنيم ، تا بتوانيم پرس و جو را بنويسيم همچون ، پيدا كردن شماره وام براي هر يك از وام ها به گونه اي كه مبلغ بزرگ تر از 1200 دلار باشد . همچون :
loan ( t [ loan – number] = S [loan-number]^S [amount]>1200}S t½}
در انگليسي ، ما مي خوانيم جمله يا توضيحي قبلي به عنوان ” دسته اي از همه متغيرهايي همچون t كه وجود دارد يك متغير ( چندتايي) S متعلق به loan براي هر مقدار t و s متعلق به loan-number كه مساوي هستند و مقدار S براي صفت amount بزرگ تر از 1200 دلار هستند

