وابستگی گذرا در یک پایگاه داده چیست؟

اجتناب از وابستگی های انتقالی به منظور کمک به عادی سازی

وابستگی گذرا در یک پایگاه داده، یک رابطه غیرمستقیم بین مقادیر در همان جدول است که باعث وابستگی کارکردی می شود . برای دستیابی به استاندارد عادی فرم سوم عادی (3NF)، شما باید هر وابستگی گذرا را حذف کنید.

طبیعتا وابستگی پیوندی به سه یا چند ویژگی (یا ستونهای پایگاه داده) نیاز دارد که وابستگی کارکردی بین آنها را داشته باشد، به این معنی که ستون A در یک جدول با ستون B از طریق ستون میانماری C متکی است.

بیایید ببینیم چگونه این ممکن است کار کند.

مثال وابستگی گذرا

AUTHORS

نویسنده_ID نویسنده کتاب نویسنده نوشتار
Auth_001 اورسون اسکات کارت بازی اندر ایالات متحده
Auth_001 اورسون اسکات کارت بازی اندر ایالات متحده
Auth_002 مارگارت اتوود داستان خنده دار کانادا

در مثال AUTHORS در بالا:

اما این جدول یک وابستگی گذرا را معرفی می کند:

اجتناب از وابستگی های انتقالی

برای اطمینان از فرم سوم عادی، بیایید وابستگی گذرا را حذف کنیم.

ما می توانیم با حذف ستون کتاب از جدول نویسندگان و ایجاد یک جدول جداگانه کتاب شروع کنیم:

کتاب ها

Book_ID کتاب نویسنده_ID
Book_001 بازی اندر Auth_001
Book_001 کودکان ذهن Auth_001
Book_002 داستان خنده دار Auth_002

AUTHORS

نویسنده_ID نویسنده نویسنده نوشتار
Auth_001 اورسون اسکات کارت ایالات متحده
Auth_002 مارگارت اتوود کانادا

آیا این را حل کرد؟ اکنون وابستگی ما را بررسی کنید:

جدول کتابها :

جدول AUTHORS :

ما باید یک جدول سوم برای عادی کردن این داده ها اضافه کنیم:

کشورها

Country_ID کشور
Coun_001 ایالات متحده
Coun_002 کانادا

AUTHORS

نویسنده_ID نویسنده Country_ID
Auth_001 اورسون اسکات کارت Coun_001
Auth_002 مارگارت اتوود Coun_002

حالا ما سه جدول داریم، با استفاده از کلید های خارجی برای پیوند بین جداول:

چرا وابستگی های پیوندی طراحی نامناسب بانک ها است

ارزش اجتناب از وابستگی های پیوندی برای کمک به اطمینان از 3NF چیست؟ بگذارید اولین جدول ما را دوباره بررسی کنیم و مسائل ایجاد کنیم:

AUTHORS

نویسنده_ID نویسنده کتاب نویسنده نوشتار
Auth_001 اورسون اسکات کارت بازی اندر ایالات متحده
Auth_001 اورسون اسکات کارت کودکان ذهن ایالات متحده
Auth_002 مارگارت اتوود داستان خنده دار کانادا

این نوع طراحی می تواند ناهنجاری های داده ها و ناسازگاری ها را به همراه داشته باشد.

اینها فقط به دلایلی هستند که باعث عادی سازی و اجتناب از وابستگی های گذرا، محافظت از داده ها و اطمینان از ثبات می شود.