• توجه: در صورتی که از کاربران قدیمی ایران انجمن هستید و امکان ورود به سایت را ندارید، میتوانید با آیدی altin_admin@ در تلگرام تماس حاصل نمایید.

SQL - محدودیت PRIMARY KEY

Reza

متخصص بخش اسکریپت
این محدودیت یک مشخصه یکتایی است که برای هر داده در جدول پایگاه داده تعریف میشود​
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

برای این کار از دستور زیر استفاده میکنیم​
MySQL

ALTER TABLE Persons
DROP PRIMARY KEY SQL Server / Oracle / MS Access:


ALTER TABLE Persons
DROP CONSTRAINT pk_PersonID
 
بالا