محدودیت PRIMARY KEY SQL

محدودیت PRIMARY KEY SQL

محدودیت PRIMARY KEY هر رکوردی از جدول‌های پایگاه داده را به صورت منحصر به فرد شناسایی می‌کند.

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

ستون کلید اصلی نمی‌تواند شامل مقادیر NULL باشد.

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

محدودیت PRIMARY KEY در CREATE TABLE SQL

زیرا SQL در هنگام ایجاد جدول "Persons" در ستون "Id_P" قرارداد PRIMARY KEY ایجاد می‌کند:

MySQL:

CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
PRIMARY KEY (Id_P)
)

SQL Server / Oracle / MS Access:

CREATE TABLE Persons
(
Id_P int NOT NULL PRIMARY KEY,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)

اگر نیاز به نام‌گذاری محدودیت PRIMARY KEY و تعریف PRIMARY KEY برای چندین ستون دارید، از دستور SQL زیر استفاده کنید:

MySQL / SQL Server / Oracle / MS Access:

CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CONSTRAINT pk_PersonID PRIMARY KEY (Id_P,LastName)
)

محدودیت PRIMARY KEY SQL در ALTER TABLE

اگر می‌خواهید برای ستون "Id_P" محدودیت PRIMARY KEY ایجاد کنید و جدول قبلاً وجود دارد، از SQL زیر استفاده کنید:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD PRIMARY KEY (Id_P)

اگر نیاز به نام‌گذاری محدودیت PRIMARY KEY و تعریف PRIMARY KEY برای چندین ستون دارید، از دستور SQL زیر استفاده کنید:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD CONSTRAINT pk_PersonID PRIMARY KEY (Id_P,LastName)

توجه:اگر از دستور ALTER TABLE برای اضافه کردن کلید اصلی استفاده می‌کنید، باید ستون کلید اصلی را به عنوان شامل NULL ارزش (در زمان ایجاد اولیه جدول) اعلام کنید.

لغو محدودیت PRIMARY KEY

برای لغو محدودیت PRIMARY KEY، لطفاً از SQL زیر استفاده کنید:

MySQL:

ALTER TABLE Persons
DROP PRIMARY KEY

SQL Server / Oracle / MS Access:

ALTER TABLE Persons
DROP CONSTRAINT pk_PersonID