تفاوت بین کلید اصلی و کلید منحصر به فرد

تفاوت بین کلید اصلی و کلید منحصر به فرد
تفاوت بین کلید اصلی و کلید منحصر به فرد

تصویری: تفاوت بین کلید اصلی و کلید منحصر به فرد

تصویری: تفاوت بین کلید اصلی و کلید منحصر به فرد
تصویری: بروس لی در مقابل جکی چان 2024, نوامبر
Anonim

کلید اصلی در مقابل کلید منحصر به فرد

به یک ستون یا مجموعه ای از ستون ها که می توان از آن برای شناسایی یا دسترسی به یک سطر یا مجموعه ای از سطرها در پایگاه داده استفاده کرد، کلید نامیده می شود. یک کلید منحصر به فرد کلیدی است که می تواند به طور منحصر به فرد یک ردیف در یک جدول را در زمینه پایگاه داده های رابطه ای شناسایی کند. یک کلید منحصر به فرد از یک ستون یا مجموعه ای از ستون ها تشکیل شده است. کلید اصلی نیز ترکیبی از ستون‌ها در جدول است که به طور منحصر به فرد یک ردیف را مشخص می‌کند. اما این یک مورد خاص از کلید منحصر به فرد در نظر گرفته می شود.

کلید منحصر به فرد چیست؟

همانطور که قبلاً ذکر شد، کلید یکتا یک ستون یا مجموعه ای از ستون ها است که می تواند یک ردیف را در جدول به طور منحصر به فرد شناسایی کند.بنابراین، یک کلید منحصر به فرد به گونه ای محدود می شود که هیچ دو مقدار از آن برابر نباشد. یکی از ویژگی های مهم این است که کلیدهای یکتا محدودیت NOT NULL را اعمال نمی کنند. از آنجایی که NULL نشان دهنده فقدان یک مقدار است، اگر دو ردیف در یک ستون NULL داشته باشند، به این معنی نیست که مقادیر برابر هستند. ستون تعریف شده به عنوان یک کلید منحصر به فرد تنها یک مقدار NULL را در آن ستون اجازه می دهد. سپس می توان از آن برای شناسایی یک ردیف خاص استفاده کرد. به عنوان مثال، در جدولی که حاوی اطلاعات دانش آموز است، شناسه دانشجویی را می توان به عنوان یک کلید یکتا تعریف کرد. از آنجایی که هیچ دو دانش آموزی نمی توانند شناسه یکسانی داشته باشند، یک دانش آموز را به طور منحصر به فرد شناسایی می کند. بنابراین ستون شناسه دانشجو تمام خصوصیات یک کلید منحصر به فرد را برآورده می کند. بسته به طراحی پایگاه داده، یک جدول ممکن است بیش از یک کلید منحصر به فرد داشته باشد.

کلید اصلی چیست؟

کلید اصلی نیز یک ستون یا ترکیبی از ستون ها است که به طور منحصر به فرد یک ردیف را در جدول یک پایگاه داده رابطه ای تعریف می کند. یک جدول حداکثر می تواند یک کلید اصلی داشته باشد. کلید اصلی محدودیت ضمنی NOT NULL را اعمال می کند.بنابراین، ستونی که به عنوان کلید اصلی تعریف می شود، نمی تواند مقادیر NULL را در خود داشته باشد. کلید اصلی می تواند یک ویژگی عادی در جدول باشد که تضمین شده است که منحصر به فرد باشد مانند شماره امنیت اجتماعی یا می تواند یک مقدار منحصر به فرد ایجاد شده توسط سیستم مدیریت پایگاه داده مانند شناسه جهانی منحصر به فرد (GUID) در مایکروسافت SQL Server باشد. کلیدهای اولیه از طریق محدودیت کلید اولیه در ANSI SQL Standard تعریف می شوند. هنگام ایجاد جدول، کلید اصلی نیز قابل تعریف است. SQL اجازه می دهد تا کلید اصلی از یک یا چند ستون تشکیل شود و هر ستونی که در کلید اصلی گنجانده شده است به طور ضمنی NOT NULL تعریف شده است. اما برخی از سیستم‌های مدیریت پایگاه داده نیاز دارند که ستون‌های کلید اصلی را به‌صراحت NOT NULL کنند.

تفاوت بین کلید اصلی و کلید منحصر به فرد

حتی اگر هم کلید اصلی و هم کلید یکتا یک یا چند ستون هستند که می توانند به طور منحصر به فرد یک ردیف را در جدول شناسایی کنند، اما تفاوت های مهمی با هم دارند. مهمتر از همه، یک جدول می تواند تنها یک کلید اصلی داشته باشد در حالی که می تواند بیش از یک کلید منحصر به فرد داشته باشد.کلید اصلی را می توان به عنوان یک مورد خاص از کلید یکتا در نظر گرفت. تفاوت دیگر این است که کلیدهای اولیه دارای یک محدودیت ضمنی NOT NULL هستند در حالی که کلید یکتا آن محدودیت را ندارد. بنابراین، ستون‌های کلید یکتا ممکن است حاوی مقادیر NULL باشند یا نباشند، اما ستون‌های کلید اصلی نمی‌توانند حاوی مقادیر NULL باشند.

توصیه شده: