قدرت کلید های خارجی در پایگاه داده های ارتباطی

یک کلید خارجی درب را به یک دنیای کامل باز می کند

طراحان پایگاه داده هنگام استفاده از پایگاه داده های ارتباطی از کلیدهای کل استفاده می کنند. در میان رایج ترین این کلید ها کلید های اصلی و کلید های خارجی هستند. یک کلید خارجی پایگاه داده یک فیلد در یک جدول ارتباطی است که مطابق با ستون اصلی اصلی یک جدول دیگر است. برای درک اینکه چگونه یک کلید خارجی کار می کند، بیایید نگاهی دقیق تر به ایده پایگاه داده ارتباطی بگیریم.

برخی از مبانی پایگاههای اطلاعاتی

در یک پایگاه داده رابطه ای، داده ها در جداول حاوی ردیف ها و ستون ها ذخیره می شوند ، و آن را آسان به جستجو و دستکاری. وجود دارد برخی ریاضی جدی در پشت مفهوم پایگاه داده رابطه ای (جبر رابطه ای، پیشنهاد شده توسط EF

Codd در IBM در سال 1970)، اما موضوع این مقاله نیست.

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

با استفاده از کلید های خارجی

اکثر جداول، به ویژه آنهایی که در پایگاههای اطلاعاتی پیچیده، دارای کلیدهای اولیه هستند. جداول هایی که برای دسترسی به جداول دیگر طراحی شده اند نیز باید یک کلید خارجی داشته باشند.

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

جداول جدول پایگاه داده Northwind
شناسه محصول نام محصول CategoryID NumberPerU قیمت واحد
1 چای 1 10 جعبه x 20 کیسه 18.00
2 چانگ 1 24 - بطری 12 اونس 19.00
3 شربت آنیس 2 12 - 550 میلی لیتر بطری 10.00
4 طعم Cajun آشپز آنتون 2 48 - 6 اونس 22.00
5 کوسه گومبو آشپز آنتون 2 36 جعبه 21.35
6 زوج تنبل مادر بزرگ 2 12 - 8 اونس 25.00
7 گلابی خشک آلی عمو باب 7 12 - 1 lb pkgs. 30.00

ستون ProductID کلید اصلی این جدول است. این شناسه منحصر به فرد را برای هر محصول اختصاص می دهد.

این جدول همچنین شامل یک ستون کلید خارجی، CategoryID می باشد. هر محصول در جدول محصول به یک ورودی در جدول رده بندی اشاره دارد که رده آن محصول را تعریف می کند.

توجه داشته باشید این گزیده از جدول رده بندی پایگاه داده:

جداول پایگاه داده Northwind جداول جدول
CategoryID نام دسته شرح
1 نوشیدنی ها نوشابه، قهوه، چای، آبجو و آبجو
2 چاشنی سس شیرین و طعم دار، طعم، اسپرد و ادویه
3 Confections دسرها، آب نبات ها و شیرینی های شیرین
5 محصولات لبنی پنیر

ستون CategoryID کلید اصلی این ستون است. (این کلید خارجی ندارد زیرا نیازی به دسترسی به جدول دیگری ندارد). هر کلید خارجی در جدول Product به یک کلید اولیه در جدول رده ها پیوند می دهد. به عنوان مثال، محصول Chai به گروه "نوشیدنی" اختصاص داده می شود، در حالی که شربت Anised در دسته "ادویه" است.

این نوع پیوند ایجاد راه های زیادی برای استفاده و استفاده مجدد از داده ها در یک پایگاه داده ی Relational است.