آموزش ایجاد و حذف و تغییر کلید اصلی – Primary Key در SQL

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

 

کلید اصلی در پایگاه داده

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

همانطور که اشاره شد، مقدار کلید اصلی برای ردیف ها (رکورد ها) باید کاملاً متفاوت و یکتا باشد و دقت به این مورد ضروری است. همچنین مقدار کلید اصلی نمی تواند NULL یا تهی باشد. نکته مهم دیگر درباره یک جدول این است که، جدول تنها می تواند دارای یک کلید اصلی باشد (که البته خود می تواند ترکیبی از چند ستون باشد).

کلید اصلی در SQL

ما به تدریج ایجاد، به روز رسانی و حذف کلید اصلی یک پایگاه داده در زبان SQL را بررسی می کنیم.

ایجاد کلید اصلی هنگام ساخت جدول با دستور CREATE TABLE

کوئری SQL زیر هنگام ساخت جدول “Persons” ، ستون “ID” را به عنوان PRIMARY KEY مشخص می کند (بدیهی است که شناسه ملی یا کد ملی برای هر کسی یکتاست و کاملاً برای مشخص کردن یک ردیف مشخص مربوط به اطلاعات یک فرد مناسب است).

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

نوشتار در MySQL برای یک ستون به عنوان کلید اصلی

نوشتار در SQL Server / Oracle / MS Access برای یک ستون به عنوان کلید اصلی

 

نوشتار در MySQL / SQL Server / Oracle / MS Access برای چند ستون به عنوان کلید اصلی

حالا نوشتار مشخص کردن ترکیب چند ستون به عنوان کلید اصلی را در زیر می آوریم تا ببینید که در هر چهار سیستم MySQL / SQL Server / Oracle / MS Access باید آن را به صورت CONSTRAINT تعریف کرد.

دقت شود که انتخاب و ترکیب چند ستون به عنوان کلید اصلی جدول، تناقضی با ضرورت یگانه بودن کلید اصلی در جدول ندارد. همانطور که مشاهده می کنید، در کوئری بالا ترکیب (ID + LastName) به عنوان تنها کلید اصلی جدول انتخاب شده است.

 

ایجاد کلید اصلی پس از ساخت جدول به کمک ALTER TABLE

اگر در هنگام ساخت جدول فراموش کنیم که کلید اصلی را ایجاد کنیم، و یا حتی به قصد تغییر آن ابتدا کلید اصلی قبلی را حذف کنیم و بخواهیم یکی جدید بسازیم چه؟ در این صورت به شیوه های زیر عمل می کنیم.

 

مشخص کردن یک ستون به عنوان کلید اصلی در ALTER TABLE

 

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

 

مشخص کردن چند ستون به عنوان کلید اصلی در ALTER TABLE

 

دقت کنید که ستون هایی که به عنوان کلید اصلی انتخاب می کنید، باید در هنگام ساخت جدول به عنوان ستون هایی معرفی شده باشند که نمی توانند مقدار NULL را به خود بگیرند.

حذف نقش کلید اصلی

برای حذف نقش کلید اصلی از روی جدول (چه یک ستون چه چند ستون) ، به شیوه زیر عمل می کنیم. اما به یاد داشته باشید نحوه نوشتار آن برای MySQL متفاوت است.

 

نحوه نوشتار کوئری حذف نقش کلید اصلی در MySQL 

 

نحوه نوشتار کوئری حذف نقش کلید اصلی در SQL Server / Oracle / MS Access

 

خلاصه

با مواردی که در بالا توضیح داده شود و با دقت در نکات و تعریف های ذکر شده در متن این آموزش، به راحتی می توانید کلید اصلی را برنامه های پایگاه داده ای خود مدیریت کنید.

 

اگر سوال یا انتقادی داشتید، لطفاً مردد نباشید و برای ما نظر بگذارید و مطرح کنید.

برنامه نویسی خوش بگذرد! 🙂

۲ نظر

  • عذر خواهی میکنم جواب سوال توی متن بود دقت نکرده بودم

  • سلام خسته نباشید اموزش عالی بود و یه سوال واسم پیش اومد

    در اون دستوری که توی جدول با استفاده از alter یک کلید اصلی به وجود میویمد
    برای حذف کردن یک کلید اصلی باید از چه سینتکسی استفاده کرد؟؟

    چون اخرین دستوری که نوشتید مربوط به حذف گروهی از کلید های اصلی بود که با constaint ایجاد شده بودن

    حال اگه کلید اصلی با constaint ایجاد نشده بود چطور باید حذفش کرد؟؟

نظرتان را برای ما بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *