📞 02166056460

محدودیت Foreign Key در sql

7 / 10
از 6 کاربر
بازگشت به لیست مقالات » | چهارشنبه 28 مرداد 1405 در ساعت 10 و 26 دقیقه | نظرات کاربران ( 0 )

محدودیت Foreign Key , SQL FOREIGN KEY Constraint یا کلید خارجی در اس کیوال

یک FOREIGN KEY یا کلید خارجی در اسکیوال ، در یک جدول به یک PRIMARY KEY در جدولی دیگر اشاره می کند.

  • برای ارتباط بین جداول از محدودیت Foreign Key استفاده می‌شود و در اصل Relational Integrity را فراهم می‌کند.
  • به عبارت ساده تر ، کلید خارجی همان مقدار کلید اصلی از جدول دیگر است.
  • مقدار یک کلید خارجی میتواند تکراری باشد.

فیلد‌های کلید خارجی ، سه نوع محدودیت را ایجاد می‌کنند :

  1. اجازه حذف رکوردی از جدول پدر نداریم که فرزندی داشته باشد.
  2. اجازه insert رکورد در جدول فرزند با کد پدری که در جدول پدر موجود نیست را نداریم.
  3. مقدار کلید پدری را که دارای فرزند هست را نمی‌توانیم تغییر دهیم.

همچنین محدودیت FOREIGN KEY  از وارد کردن داده های نامعتبر در جدول جلوگیری میکند. (در فیلد foreign key) ، دلیل آن هم، این است که با مقادیر جدول دیگر که به آن اشاره می کند تطابق ندارد.

 برای تعریف یک محدودیت FOREIGN KEY در دستور create table ، روی یک ستون از دستور SQL زیر استفاده می کنیم:

CREATE TABLE Orders
(
O_Id int NOT NULL PRIMARY KEY,
OrderNo int NOT NULL,
P_Id int FOREIGN KEY REFERENCES Persons(P_Id)
)

 برای تعریف یک محدودیت FOREIGN KEY  روی چند ستون از دستور SQL زیر استفاده می کنیم:

CREATE TABLE Orders
(
O_Id int NOT NULL,
OrderNo int NOT NULL,
P_Id int,
PRIMARY KEY (O_Id),
CONSTRAINT fk_PerOrders FOREIGN KEY (P_Id)
REFERENCES Persons(P_Id)
)

 

محدودیت FOREIGN KEY پس از ساخته شدن جدول

برای تغییر دادن یک محدودیت FOREIGN KEY  روی یک ستون از دستور SQL زیر استفاده می کنیم:

ALTER TABLE Orders
ADD FOREIGN KEY (P_Id)
REFERENCES Persons(P_Id)

برای تغییر دادن محدودیت FOREIGN KEY  روی چند ستون، از دستور SQL زیر استفاده می کنیم:

ALTER TABLE Orders
ADD CONSTRAINT fk_PerOrders
FOREIGN KEY (P_Id)
REFERENCES Persons(P_Id)

از بین بردن FOREIGN KEY

برای از بین بردن محدودیت FOREIGN KEY ، از دستور SQL زیر استفاده می کنیم:

ALTER TABLE Orders
DROP CONSTRAINT fk_PerOrders

ارسال نظر و نظرات ثبت شده

سایر مقالات

7 / 10
از 6 کاربر
آموزش View در sql

آموزش View در sql

آموزش view در sql view در sql در واقع همان جداول مجازی هستند که توسط آن می توانید عملیات خاصی ...
فیلد identity در Sql

فیلد identity در Sql

فیلد identity در sql فیلد identity در sql به این معناست که به ازای هر رکوردی که در جدول وارد م ...
محدودیت Unique در sql

محدودیت Unique در sql

محدودیت Unique , SQL UNIQUE Constraint در sql از محدودیت Unique زمانی استفاده میکنیم که بخواهی ...
محدودیت NOT NULL در sql

محدودیت NOT NULL در sql

محدودیت NOT NULL در sql از محدودیت NOT NULL در دستور create table زمانی استفاده مکنیم که میخوا ...
محدودیت Check در sql

محدودیت Check در sql

محدودیت Check ,  SQL CHECK Constraint یا محدودیت های خاص در sql از محدودیت Check یا محدود ...
محدودیت Default در اسکیوال

محدودیت Default در اسکیوال

محدودیت Default  , SQL DEFAULT Constraint یا مقدار پیش فرض در sql از محدودیت Default  ...
محدودیت Foreign Key در sql

محدودیت Foreign Key در sql

محدودیت Foreign Key , SQL FOREIGN KEY Constraint یا کلید خارجی در اس کیوال یک FOREIGN KEY یا ک ...
محدودیت Primary Key در sql

محدودیت Primary Key در sql

محدودیت Primary Key , SQL PRIMARY KEY Constraint یا کلید اصلی در اس کیو ال از محدودیت Primary ...
ایجاد محدودیت برای فیلد ها (Constraints)

ایجاد محدودیت برای فیلد ها (Constraints)

ایجاد محدودیت برای فیلد ها در اسکیوال (Constraints) Constraint ها در sql یا همان محدودیت ها در ...
دستور alter table در sql

دستور alter table در sql

دستور Alter Table در sql از دستور Alter Table برای اضافه کردن يا حذف کامل يک ستون از يک جدول و ...
تغییر نام فیلد در یک جدول با استفاده از دستور sql

تغییر نام فیلد در یک جدول با استفاده از دستور sql

تغییر نام فیلد در یک جدول با استفاده از دستور sql برای تغییر نام فیلد در جدول از تغییر کد باید به ر ...
دستور Create Index در sql

دستور Create Index در sql

دستور Create Index در sql از دستور Create Index در اسکیوال برای ايجاد انديس در ستون های جدول ا ...
دستور Drop در sql

دستور Drop در sql

دستور Drop در اسکیوال تمامی جدول ها ، اندیس ها ، و حتی دیتابیس ها میتوانند با دستور Drop در sq ...
دستور Create Table در sql

دستور Create Table در sql

دستور Create Table در sql برای ايجاد يک جدول جديد در پايگاه داده sql ، از دستور Create Table&n ...
دستور CREATE DATABASE در sql

دستور CREATE DATABASE در sql

دستور CREATE DATABASE در sql برای ايجاد يک پايگاه داده جديد از دستور CREATE DATABASE استف ...
⏳ در حال پردازش...
لطفا صبر کنید