این محدودیت یک مشخصه یکتایی است که برای هر داده در جدول پایگاه داده تعریف میشود
primary key حتما باید مقدارش یکتا باشد
مقدار null را نمیتواند بپذیرد
هر جدول باید یک primary key داشته باشد و البته فقط یک primary key هم میتواند داشته باشد.
ایجاد محدودیت primary key در هنگام تولید جدول MySQL:
CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
PRIMARY KEY (P_Id)
) SQL Server / Oracle / MS Access:
CREATE TABLE Persons
(
P_Id int NOT NULL PRIMARY KEY,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)
و اما برای اینکه یک محدودیت primary key را نامگذاری کنیم و اینکه برای یک جدول با چندین ستون یک primary key تعریف کنیم از دستور زیر استفاده می کنیم خوب به این دستور دقت کنید
MySQL / SQL Server / Oracle / MS Access:CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName)
)
ایجاد primary key بعد از ساخت یک جدول
برای انجام عمل فوق از دستور زیر استفاده میکنیم و حتما دستور alter را بخاطر دارید ، دقت کنید
MySQL / SQL Server / Oracle / MS Access: ALTER TABLE Persons
ADD PRIMARY KEY (P_Id)
و همچنین این عمل برای یک جدول با داده های بسیار از دستور زیر بهره میگیریم
MySQL / SQL Server / Oracle / MS Access:ALTER TABLE Persons
ADD CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName) نکته:
دقت کنید زمانی که شما بعد از ساخت یک جدول اقدام به تولید primary key میکنید باید حتما انرا not null تعریف کنید
حذف یک primary keyبرای این کار از دستور زیر استفاده میکنیم
MySQLALTER TABLE Persons
DROP PRIMARY KEY SQL Server / Oracle / MS Access:
ALTER TABLE Persons
DROP CONSTRAINT pk_PersonID