پایگاه داده رابطهای: تفاوت میان نسخهها
محتوای حذفشده محتوای افزودهشده
Somakhshik (بحث | مشارکتها) |
Somakhshik (بحث | مشارکتها) بدون خلاصۀ ویرایش برچسب: افزودن فضای خالی زیاد(AF) |
||
خط ۱:
== پایگاه دادههای رابطهای ==
'''پایگاه داده رابطهای ''' (Relational databases) به آن دسته از [[پایگاههای داده]] اطلاق میشود که بر اساس [[مدل رابطهای]] طراحی و ایجاد شده باشند.
پس از پایگاههای دادهای سلسله مراتبی و شبکهای، که هر یک دارای ضعفهایی بودند، متخصصان در جستجوی مدلی بودند که دارای ساختار دادهای با انتزاع قوی ابداع گردید. مدل رابطهای در سال ۱۹۷۰ توسط E.F.Codd مطرح شد. این مدل دارای ساختار دادهای با انتزاع قوی بوده و اساساً ساختار دادهای در آن بر اساس یک مفهوم ریاضی بنام رابطه استوار است. در اینجا لازم است به این نکته توجه شود که مفهوم رابطه با مفهوم ریاضی آن تاحدودی متفاوت است.
سطر ۵ ⟵ ۶:
=== ساختار دادههای رابطهای ===
----
برای طراحی پایگاه دادهها در سطح انتزاعی پایین تر از سطح مدل سازی، به یک ساختار دادهای از یک مدل دادهای نیاز است و اساساً همین مدل دادهای تامین کننده محیط انتزاعی است. در پایگاه داده رابطهای بالاخص در محیط انتزاعی مورد استفاده کاربر، رابطه نمایشی جدولی دارد و اساساً پایگاه داده رابطهای مجموعهای است از تعدادی نوع جدول. مفاهیم ساختار جدولی عبارتند از: '''سطر، جدول و ستون'''
</br>
سطر ۱۲ ⟵ ۱۴:
=== تعریف رابطه ===
----
با فرض وجود n مجموعه S1، S2، ... ، Sn رابطه R تعریف شده روی این n مجموعه، مجموعهای است از n تاییها که به آن تاپل میگویند به نحوی که جزء اول هر n تایی از S1، جزء دوم از S2 و... مقدار بگیرد. هریک از مجموعههای S1، S2 و... میدان یا دامنه نامیده میشود. دامنه، مجموعه مقادیری است که یک صفت از رابطه مشخص میتواند داشته باشد.
برای درک بهتر موضوع مثالی را با جزییات بیشتر بیان میکنیم. فرض کنید مجموعههای زیر را داشته باشیم:
</br>• مجموعه مقادیر شماره دانشجویان:S1
</br>• مجموعه اسامی دانشجویان:S2
</br>• مجموعه مقادیر سطوح تحصیلی در دانشگاه:S3
</br>• مجموعه مقادیر رشتههای تحصیلی:S4
</br>• مجموعه مقادیر شماره گروههای آموزشی:S5
</br>در اینصورت، STT با پنج صفت خاصه مرتبط با پنج مجموعه بالا، یک رابطه بوده و به صورت زیر نوشته میشود:</br>
(STID,STNAME,STDEG,STMJR,STDEID)
</br> با فرض وجود n دامنه D1، D2،... ، Dn رابطه R از دو قسمت تشکیل شدهاست:
1- مجموعه عنوان: جموعهای نامدار است که از n صفت به صورت Ai: Di که در آن هر Ai نام یک صفت است و هر Di نام دامنه صفت است. به این مجموعه شمای رابطه نیز میگویند که به صورت شماتیک چنین است:
</br>
سطر ۳۳ ⟵ ۴۱:
=== تناظر بین مفاهیم رابطهای و مفاهیم جدولی ===
----
برای پیاده سازی مدل رابطهای در محیط انتزاعی از رابطه استفاده میشود. برای پیاده سازی مدل رابطهای در ساختار پایگاه داده از مفهوم جدول استفاده میشود. در جدول ۱ تناظر بین اجزا دو مفهوم رابطه و جدول آورده شدهاند.
<center>جدول ۱: تناظر بین اجزا مفهوم رابطه و جدولی در دادههای رابطهای </center>
<center>
سطر ۵۲ ⟵ ۶۲:
| کاردینالیتی || تعداد سطرها
|}</center>
'''نکته:''' مفاهیم جدول و رابطه تا حدود زیادی به یکدیگر نزدیک بوده و در مواردی به اشتباه بجای یکدیگر مورد استفاده قرار میگیرند.
==== ویژگیهای رابطه ====
----
رابطه به عنوان تنها عنصر ساختاری اصلی در مدل رابطهای برای نمایش انواع موجودیتها و انواع ارتباطات بکار میرود. در واقع در مدل رابطهای هم نوع موجودیت و هم نوع ارتباط با مفهوم رابطه نمایش داده میشوند و در نتیجه هم نمونه موجودیت و هم نمونه ارتباط با مفهوم تاپل نشان داده میشوند. رابطه داراس چهار ویژگی زیر میباشد:
</br>•رابطه تاپل تکراری ندارد، زیرا بدنه رابطه مجموعهاست و مجموعه نمیتواند عنصر تکراری داشته باشد.
</br>•تاپلها نظم ندارند زیرا بدنه رابطه مجموعهاست و مجموعه در حالت کلی فاقد نظم است.
سطر ۷۱ ⟵ ۸۴:
===== کلید اصلی =====
یکی از کلیدهای کاندید رابطه که شرایط زیر را داشته باشد:
</br>•شناسایی کننده نوع موجودیت (تک تاپل) در رابطه باشد. مانند شماره دانشجویی برای هر دانشجو.
</br>•از نظر طول، کوتاه تر باشد. یعنی بین دو کلید کاندید، کلید کوتاه تر برای کلید اصلی بودن بهتر است.
سطر ۸۹ ⟵ ۱۰۳:
</br>
''رابطه مشتق:'' رابطهای که به کمک یک عبارت رابطهای بر حسب رابطههای نامدار دیگر و در نهایت برحسب رابطههای مبنا تعریف میشود. انواع رابطه و ارتباط بین آنها در شکل ۱ آمدهاست.
</br>
<center>شکل ۱: نمایش نحوه ارتباط بین رابطه ها</center>
سطر ۹۸ ⟵ ۱۱۳:
=== قواعد جامعیت در مدل رابطهای ===
----
</br>در هر محیط عملیاتی همیشه مجموعهای از قواعد معنایی Semantic Rules بامحدودیتهای جامعیتی Integrity Constraints وجود دارند. اگر دادههای ذخیره شده در پایگاه داده همواره این محدودیتها را رعایت کنند، جامعیت پایگاه داده تامین میباشد. جامعیت پایگاه دادهها به معنی صحت، دقت و سازگاری دادههای ذخیره شده در پایگاه دادهها در تمام لحظات است. هر سیستم پایگاه داده باید بتواند جامعیت پایگاه داده را کنترل و تضمین کند. عواملی مانند آنچه در زیر آمدهاست میتواند باعث نقض جامعیت شود:
</br>•اشتباه در برنامهها
</br>•اشتباه در ورود اطلاعات از سوی کاربران
سطر ۱۰۴ ⟵ ۱۲۱:
</br>•عدم انجام کامل فرایند بر روی دادهها
</br>•وجود افزونگی و تعدد در دادههای تکراری.
</br>برای کنترل و تضمین جامعیت، قواعدی لازم است تا سیستم مدیریت بتواند بر اساس آنها عمل کرده و باعث انطباق محتوای پایگاه با واقعیات باشدو این قواعد را قواعد جامعیتی و یا محدودیتهای جامعیتی گویند.
==== انواع قواعد جامعیت ====
----
قواعد جامعیت در مدل رابطهای به دو رده کلی تقسیم میشوند که به شرح هریک خواهیم پرداخت:
</br>•قواعد کاربری User Defined Rules
سطر ۱۱۱ ⟵ ۱۳۰:
===== قواعد کاربری =====
----
قواعد کاربری که گاه به آنها قواعد محیطی یا قواعد وابسته به داده نیز میگویند، قواعدی هستند که توسط کاربر مجاز و برای یک پایگاه داده خاص تعریف میشوند. این قواعد وابسته به واقعیات محیط هستند و در بعضی کتب به آنها محدودیتهای جامعیتی معنایی نیز میگویند. قواعد کاربری در مدل رابطهای به چهار دسته تقسیم میشوند:
</br>•محدودیت میدانی: محدودیتی است ناظر بر میدان هر صفت خاصه و مقادیر مجاز آنرا مشخص میکند.
</br>•محدودیت صفتی: محدودیتی است ناظر بر یک صفت و نوع آن را مشخص میکند.
سطر ۱۱۸ ⟵ ۱۳۹:
==== فرا قواعد ====
----
قواعدی هستند که باید توسط هر سیستم رابطه در هر پایگاه داده رابطهای اعمال گردند. این قواعد به دو گروه کلی تقسیم میشوند:
</br>•قاعده جامعیت موجودیتی Entity Integrity Rule: این قاعده ناظر بر کلید اصلی است و به این شرح است که هیچ جزء تشکیل دهنده کلید اصلی رابطه نمیتواند مقدار هیچ داشته باشد. دلیل توجیه کننده این قاعده این است که هر مقدار یک کلید اصلی، در واقع شناسه آن تاپل در رابطهاست و عامل تمییز نمونههای موجودیت (تاپلها) در رابطهاست و بدیهی است که عامل تمییز خود نمیتواند مقدار هیچ یا ناشناخته داشته باشد.
</br>•قاعده جامعیت ارجاعی Referential Integrity Rule: این قاعده ناظر بر کلید خارجی بوده و به این شرح است که اگر صفت خاصه Ai در رابطه R2 کلید خارجی باشد در این صورت Ai در R2 میتواند مقدار هیچ داشته باشد در غیر اینصورت باید حتما مقداری باشد که در رابطه مرجع R1 وجود دارد عبارت دیگر مقدار کلید خارجی نمیتواند در رابطه مرجع وجود نداشته باشد.
</br>دلیل توجیه این قاعده این است که کلید خارجی عامل ارجاع از یک نمونه موجودیت به نمونه موجودیت دیگر است و بدیهی است که نمیتوان به نمونه موجودیت ناموجود ارجاع داد.
{{پایگاه دادهها}}
|