SQL BİRİNCİL ANAHTAR Kısıtlaması
SQL BİRİNCİL ANAHTAR Kısıtlaması
Kısıtlama, bir tablodaki PRIMARY KEY
her kaydı benzersiz bir şekilde tanımlar.
Birincil anahtarlar BENZERSİZ değerler içermelidir ve NULL değerler içeremez.
Bir tabloda yalnızca BİR birincil anahtar olabilir; ve tabloda, bu birincil anahtar tek veya birden çok sütundan (alanlardan) oluşabilir.
CREATE TABLOSUNDA SQL BİRİNCİL ANAHTAR
Aşağıdaki SQL PRIMARY KEY
, "Kişiler" tablosu oluşturulduğunda "ID" sütununda bir oluşturur:
MySQL:
CREATE TABLE Persons
(
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
PRIMARY KEY (ID)
);
SQL Sunucusu / Oracle / MS Erişimi:
CREATE TABLE Persons
(
ID int NOT NULL PRIMARY KEY,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int
);
Bir PRIMARY KEY
kısıtlamanın adlandırılmasına izin vermek ve birden çok sütunda bir kısıtlama tanımlamak
PRIMARY KEY
için aşağıdaki SQL sözdizimini kullanın:
MySQL / SQL Sunucusu / Oracle / MS Erişimi:
CREATE TABLE Persons
(
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
CONSTRAINT PK_Person PRIMARY KEY (ID,LastName)
);
Not: Yukarıdaki örnekte yalnızca BİR
PRIMARY KEY
(PK_Person) vardır. Ancak, birincil anahtarın DEĞERİ İKİ SÜTUNDAN (ID + Soyadı) oluşur.
ALTER TABLOSUNDA SQL BİRİNCİL ANAHTAR
PRIMARY KEY
Tablo zaten oluşturulduğunda "ID" sütununda bir kısıtlama oluşturmak için aşağıdaki SQL'i kullanın:
MySQL / SQL Sunucusu / Oracle / MS Erişimi:
ALTER TABLE Persons
ADD PRIMARY KEY (ID);
Bir PRIMARY KEY
kısıtlamanın adlandırılmasına izin vermek ve birden çok sütunda bir kısıtlama tanımlamak
PRIMARY KEY
için aşağıdaki SQL sözdizimini kullanın:
MySQL / SQL Sunucusu / Oracle / MS Erişimi:
ALTER TABLE Persons
ADD CONSTRAINT PK_Person PRIMARY KEY (ID,LastName);
Not: Birincil anahtar eklemek için kullanırsanız ALTER TABLE
, birincil anahtar sütun(lar)ının NULL değerler içermeyecek şekilde (tablo ilk oluşturulduğunda) bildirilmiş olması gerekir.
BİRİNCİL ANAHTAR Kısıtlamasını BIRAKIN
Bir PRIMARY KEY
kısıtlamayı kaldırmak için aşağıdaki SQL'i kullanın:
MySQL:
ALTER TABLE Persons
DROP PRIMARY KEY;
SQL Sunucusu / Oracle / MS Erişimi:
ALTER TABLE Persons
DROP CONSTRAINT PK_Person;