انواع کلید در جدول پایگاه داده
کلید یک یا چند ستون در جدول میباشد که به عنوان یک شاخص یکتا برای گرفتن آیتم ها از داده های جدول مورد استفاده قرار میگیرد. کلید ها همچنین برای ایجاد رابطه میان جدول های پایگاه استفاده میشوند.
سوپر کلید یا Super Key
سوپر کلید مجموعهای ۱ یا چند عضوی از کلیدها است که میتواند برای تائید هویت یا تشخیص یک رکورد به صورت یونیک در جدول پایگاه داده مورد استفاده قرار گیرد. کلید اصلی, کلید یکتا, کلید جایگزین زیر مجموعهای از سوپر کلید ها هستند.
کلید کاندید
کلید کاندید مجموعهای ۱ یا چند عضوی از ستونها است که میتواند برای تائید هویت یا تشخیص یک رکورد به صورت یونیک در جدول پایگاه داده مورد استفاده قرار گیرد. هر کلید کاندید میتواند به عنوان یک کلید اصلی نیز بکار گرفته شود.
کلید اصلی یا primary key
کلید اصلی یا primary key مجموعهای ۱ یا چند عضوی از ستونها است که باید یکتا یا متمایز باشند و غیر null باشند. فرق کلید اصلی با کلید کاندید این است که در هر جدول فقط ۱ کلید اصلی داریم درحالی که میتوان چند کلید کاندید داشت. ردیفها در کلید اصلی به صورت clustered ایندکس میشوند; یعنی به ترتیب داده های ذخیره شده در دیسک فیزیکی. ایندکس ها نوعی کلید اصلی هستند. ایندکسها در hash table مقداری یکتا میباشند که به یک داده نسبت داده میشوند.
با ایندکس کردن ستونها در جدول پایگاه داده به واسطه یک data structure مانند hash table ها سرعت پیدا کردن مقدار داده بهبود مییابد
کلید مرکب
کلید مرکب یا Composite یا Compound ترکیبی حداقل از ۲ ستون در جدول است. کلید مرکب میتواند یک کلید کاندید یا اصلی باشد.
کلید یکتا
کلید یکتا مجموعهای ۱ یا چند عضوی از ستونها است که برای تائید هویت یا تشخیص یک رکورد به صورت یونیک در جدول پایگاه داده مورد استفاده قرار گیرد. کلید یکتا مانند کلید اصلی است با این تفاوت که در یک جدول میتوانیم چندین کلید یکتا داشته باشیم. همچنین این کلید میتواند یک مقدار نال داشته باشد. تفاوت دیگر کلید یکتا با کلید اصلی این است که کلید یکتا یک ایندکس non-clustered است یعنی ترتیب ردیف ها مانند ترتیب فیزیکی داده های ذخیره شده روی دیسک نیست و بجای آن بر اساس ستون هایی که ایندکس را میسازند مرتب میشود.
کلید خارجی
کلید خارجی ستونی در جدول پایگاه داده میباشد که مقادیر آن کلید اصلی جدولی دیگر میباشند. کلید خارجی میتواند چندین مقدار تکراری و نال داشته باشد.