دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۱
  • شهریور

جلسه ۴۵ : ویژگی کلید خارجی در SQL

  • دسته‌بندی‌ها :
جلسه ۴۵ : ویژگی کلید خارجی در SQL
    • جزئیات
    • نوع محتواآموزش تصویری

      مقدمه

      با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرن . و کاربرانی که دوره آموزش کامل SQL را دنبال می کنند. همانطور که قبلا نیز اشاره شد، شما می توانید با تعریف ویژگی PRIMARY KEY در جداول یک پایگاه داده ی SQL، بین جداول ارتباط برقرار کنید. اما فقط تعریف این ویژگی کافی نیست، شما باید فیلد یا فیلدهایی که به عنوان PRIMARY KEY در یک جدول تعریف کرده اید را در جدول مقابل نیز، داشته باشید. اما در آن جدول باید از یک ویژگی دیگر استفاده کنید که ما در ادامه ی مبحث آشنایی با ویژگی FOREIGN KEY در SQL یا کلید خارجی در SQL ، شما را با آن آشنا خواهیم کرد.

      ویژگی FOREIGN KEY یا کلید خارجی در SQL

      ویژگی FOREIGN KEY در واقع کلیدی برای ارتباط و لینک شدن دو جدول است.

      FOREIGN KEY در واقع فیلد یا مجموعه ای از فیلدهاست، که به PRIMARY KEY سایر جداول پایگاه داده، اشاره می کند.

      جدولی را که دارای کلید خارجی یا  FOREIGN KEY باشد را جدول فرزند می نامند.

      و جدولی را که کلید ارتباط با جدول قبلی را داشته باشد. جدول مرجع یا والد می نامند.

      جداول نمونه پایگاه داده

      ما از دو جدول زیر، برای مثالهای ارائه شده در این آموزش استفاده می کنیم:

      جدول “Persons”:

      PersonIDLastNameFirstNameAge
      ۱HansenOla۳۰
      ۲SvendsonTove۲۳
      ۳PettersenKari۲۰

      جدول “Orders”:

      OrderIDOrderNumberPersonID
      ۱۷۷۸۹۵۳
      ۲۴۴۶۷۸۳
      ۳۲۲۴۵۶۲
      ۴۲۴۵۶۲۱

      دو جدول فوق، از طریق فیلد “PersonID” که در هر دو جدول وجود دارد، با هم ارتباط دارند.

      فیلد “PersonID” در جدول “Persons” به عنوان PRIMARY KEY( کلید اصلی) این جدول تعریف شده است.

      فیلد “PersonID” در جدول “Orders” به عنوان FOREIGN KEY(کلید خارجی) این جدول تعریف شده است.

      FOREIGN KEY در واقع ارتباط بین دو جدول را حفظ می کند. و از اقداماتی که ارتباط بین جداول را از بین می برد جلوگیری می کند.

      داده هایی که در فیلدFOREIGN KEY وارد می شود. ابتداباید در فیلد کلید جدول والد وجود داشته باشد.

      تعریف FOREIGN KEY در زمان ایجاد جدول

      مثال زیر یک جدول با نام Orders ایجاد می کند که یکی از فیلدهای آن به نام PersonID به عنوان FOREIGN KEY تعریف شده است:

      بانک اطلاعاتی MySQL:

      مثال : 

      در بانک های اطلاعاتی SQL Server / Oracle / MS Access:

      مثال : 

      برای تعریف کلید خارجی که شامل چند فلید می شود از ساختار زیر استفاده کنید:

      در بانک های اطلاعاتی MySQL / SQL Server / Oracle / MS Access:

      مثال : 

      تعریف کلید خارجی در جداول ایجاد شده در بانک اطلاعاتی

      مثال زیر فیلد “PersonID” از جدول “Orders” را که قبلا ایجاد شده است را به عنوان کلید خارجی تعریف می کند:

      در بانک های اطلاعاتی MySQL / SQL Server / Oracle / MS Access:

      مثال : 

      مثال زیر با ایجاد FK_PersonOrder امکان استفاده از چند فیلد را به عنوان کلید خارجی می دهد:

      در بانک های اطلاعاتی MySQL / SQL Server / Oracle / MS Access:

      مثال : 

      حذف ویژگی FOREIGN KEY یا کلید خارجی از جداول در SQL

      برای حذف یک ویژگی FOREIGN KEY از جداول SQL از ساختارهای زیر استفاده کنید:

      در بانک اطلاعاتی MySQL:

      مثال : 

      دربانک های اطلاعاتی SQL Server / Oracle / MS Access:

      مثال : 

      کلام آخر

      کاربرد اصلی یک کلید خارجی در جداول SQL ، حفظ ارتباط با جدول والد بوده و از اقداماتی که باعث قطع رابطه ی بین جداول می شود نیز، جلوگیری می کند. امیدواریم که مباحث آشنایی با ویژگی کلید خارجی در SQL مورد توجه شما قرار گرفته باشد.

      QR:  جلسه ۴۵ : ویژگی کلید خارجی در SQL
      به اشتراک بگذارید


      دیدگاه کاربران
      1. تصویر کاربر
      2. تصویر کاربر
        • تصویر کاربر