ایس کیو ال پرائمری کلچر کنٹرول

ایس کیو ال پرائمری کلچر کنٹرول

محدودیت 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 Constraint on ALTER TABLE SQL

اگر PRIMARY KEY محدودیت برای ستون "Id_P" در جدول موجود ایجاد می‌کنید، لطفاً از 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