SQL Primary Key Nedir? Oluşturma ve Kullanımı

Primary key nedir ile Primary key anlatılmış, MySQL, SQL Server, Oracle vb. sistemler için SQL ile Primary key oluşturma ve kullanımı ile ilgili bilgi verilmiştir.

Primary key nedir?

SQL içerisinde kullanılan primary key veya birincil anahtar SQL Unique kısıtlamasına benzerdir.

Unique kısıtlamasından farkı, değer olarak NULL içermemesi ve her tabloya sadece bir tane eklenebilmesidir.

Ayrıca Primary key SQL Server, Oracle vb. geniş özellikleri barındıran sistemlerde Clustered index, Index-Organized Tables vb. özellikler için kullanılır.

Özetle; Primary key kullanım amacı her bir satırın farklı olmasını garantilemektir.

Primary key oluşturma

Primary key veri tabanı tasarımı sırasında, tablo oluşturma veya daha sonra ihtiyaç halinde bir tabloya eklenebilir. Veri tabanı tasarımı sırasında eklemek faydalı olacaktır.

Primary key oluşturma – 1

CREATE TABLE kisiler (
  kisi_sira INT PRIMARY KEY,
  kisi_adi VARCHAR(20),
  kisi_soyadi VARCHAR(30),
  kisi_eposta VARCHAR(50)
);

Primary key oluşturma – 2

CREATE TABLE kisiler (
  kisi_sira INT,
  kisi_adi VARCHAR(20),
  kisi_soyadi VARCHAR(20),
  kisi_eposta VARCHAR(50),
  CONSTRAINT PK_sira PRIMARY KEY(kisi_sira)
);

Primary key kısıtlaması birden fazla sütunda beraber kullanılabilir.

Primary key oluşturma – 3

CREATE TABLE kisiler (
  kisi_sira INT,
  kisi_adi VARCHAR(20),
  kisi_soyadi VARCHAR(20),
  kisi_eposta VARCHAR(50),
  CONSTRAINT PK_sira_eposta PRIMARY KEY(kisi_sira, kisi_eposta)
);

Yukarıdaki kullanımda kisi_sira sütunu ve kisi_eposta sütunu değeri “1” ve “yusufsezer@mail.com” olan bir kayıt varken değerleri “1” ve “ben@yusufsezer.com.tr” olan kayıt eklenecektir.

Ancak kisi_sira değeri “1” ve kisi_eposta değeri “yusufsezer@mail.com” olan bir değer eklenmeyecektir.

Primary key kısıtlaması kayıt sırasını belirten sütunlarda otomatik artış özelliğiyle birlikte kullanılır.

MySQL VTY Sisteminde otomatik artış özelliğiyle birlikte kullanımı aşağıdaki gibidir.

CREATE TABLE kisiler (
  kisi_sira INT AUTO_INCREMENT,
  kisi_adi VARCHAR(20),
  kisi_soyadi VARCHAR(20),
  kisi_eposta VARCHAR(50),
  CONSTRAINT PK_sira PRIMARY KEY(kisi_sira)
);

SQL Server VTY Sisteminde otomatik artış özelliğiyle birlikte kullanımı aşağıdaki gibidir.

CREATE TABLE kisiler (
  kisi_sira INT IDENTITY(1,1),
  kisi_adi VARCHAR(20),
  kisi_soyadi VARCHAR(20),
  kisi_eposta VARCHAR(50),
  CONSTRAINT PK_sira PRIMARY KEY(kisi_sira)
);

Primary key kısıtlaması otomatik artış özelliğiyle birlikte kullanılması faydalı olacaktır.

Hayırlı günler dilerim.

Bunlar da hoşunuza gidebilir...

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir