Kayıtlar

constraint etiketine sahip yayınlar gösteriliyor

SQL Ders40 - CONSTRAINTS | FOREIGN KEY

FOREIGN KEY
Başka bir tablonun PRIMARY KEY'i geçerli tabloda FOREIGN KEY olarak adlandırılır.


CREATE TABLE tablo_ismi(
degisken_ismi degisken_tipi FOREIGN KEY REFERENCES tablo_ismi(kolon_ismi)
);


veya


CREATE TABLE tablo_ismi(
degisken_ismi degisken_tipi
CONSTRAINT sınırlandırma_ismi FOREIGN KEY (kolon_ismi)
);


FOREIGN KEY sınırlandırmasını daha önce oluşturulmuş bir tabloya ekleme


ALTER TABLE tablo_ismi
ADD FOREIGN KEY(kolon_ismi) REFERENCES tablo_ismi(kolon_ismi)
;


veya


ALTER TABLE tablo_ismi
ADD CONSTRAINT sınırlandırma_ismi
FOREIGN KEY(kolon_ismi) REFERENCES tablo_ismi(degisken_ismi);


FOREIGN KEY sınırlandırmasını kaldırma


ALTER TABLE tablo_ismi
DROP CONSTRAINT sınırlandırma_ismi;



SQL Ders38 - CONSTRAINTS | UNIQUE

Bir kolondaki tüm verilerin farklı değerleri olmasını sağlar. Daha önce olan veriyi tabloya eklettirmez.


CREATE TABLE tablo_ismi(
degisken_ismi degisken_tipi UNIQUE);


veya


CREATE TABLE tablo_ismi(
degisken_ismi degisken_tipi
UNIQUE(degisken_tipi));


UNIQUE sınırlandırmasını daha önce oluşturulmuş bir tabloya ekleme


ALTER TABLE tablo_ismi
ADD UNIQUE (kolon_ismi);


Birden fazla kolonda UNIQUE sınırlandırmasını eklemek için


ADD CONSTRAINT sınırlandırma_ismi UNIQUE (kolon_ismi,kolon_ismi)


UNIQUE sınırlandırmasını kaldırmak için


ALTER TABLE tabllo_ismi
DROP CONSTRAINT sınırlandırma_ismi;


veya


ALTER TABLE tablo_ismi
ALTER COLUMN degisken_ismi degisken tipi;


SqlQuery38.sql
CREATETABLE test (t int UNIQUE);
SqlQuery38_2.sql
ALTERTABLE test ADDUNIQUE(t);
SqlQuery38_3.sql
ALTERTABLE test ALTERCOLUMN T int;

SQL Ders39 - CONSTRAINTS | PRIMARY KEY

PRIMARY KEY 

NOT NULL ve UNIQUE kombinasyonudur. Her tablo için bir tane mevcuttur.


CREATE TABLE tablo_ismi(
degisken_ismi degisken_tipi PRIMARY_KEY);


veya


CREATE TABLE tablo_ismi(
degisken_ismi degisken_tipi
CONSTRAINT sınırlandırma_ismi PRIMARY_KEY(kolon/kolonlar_ismi);
);


PRIMARY KEY sınırlandırmasını daha önce oluşturulmuş bir tabloya ekleme


ALTER TABLE tablo_ismi
ADD PRIMARY KEY (kolon_ismi);


veya


ALTER TABLE tablo_ismi
ADD CONSTRAINT sınırlandırma_ismi PRIMARY KEY (kolon/kolonlar_ismi);


PRIMARY KEY sınırlandırmasını kaldırma


ALTER TABLE tablo_ismi
DROP CONSTRAINT sınırlandırma_ismi;


SqlQuery39.sql
CREATETABLE test(t int NOTNULLCONSTRAINT pm_key PRIMARYKEY(t) );
SqlQuery39_2.sql
ALTERTABLE test ADDCONSTRAINT pm_key PRIMARYKEY(t);
SqlQuery39_3.sql
ALTERTABLE test DROPCONSTRAINT pm_key;

SQL Ders37 - CONSTRAINTS | NOT NULL

NOT NULL

Bir kolonun değerinin NULL olarak bırakılmamasını sağlar.


CREATE TABLE tablo_ismi(degisken_ismi degisken_tipi NOT NULL);


NOT NULL sınırlandırmasını ekleme


ALTER TABLE tablo_ismi
ALTER COLUMN kolon_ismi kolon_tipi NOT NULL;


NOT NULL sınırlandırmasını kaldırma


ALTER TABLE tablo_ismi
ALTER COLUMN kolon_ismi kolon_tipi NULL;


SqlQuery37.sql
CREATETABLE test(t int NOTNULL);
SqlQuery37_2.sql
ALTERTABLE test ALTERCOLUMN t int NULL;

SQL Ders36 - CONSTRAINTS

SQL'de tablodaki verileri için özel kısıtlamalar belirtebilirsiniz. Bu kısıtlamalara contraints denilmektedir. Kısıtlamalar kolon seviyesinde veya tablo seviyesinde olabilir. Kolon seviyesindeki kısıtlamalar sadece kolonu kapsarken, tablo seviyesindeki kısıtılamalar tüm tabloyu kapsar.

SQL'de sıklıkla kullanılan kısıtlamalar (constraints)
NOT NULL Bir kolonun değerinin NULL olarak bırakılmamasını sağlar.UNIQUE Bir kolondaki tüm verilerin farklı değerleri olmasını sağlar.PRIMARY KEY NOT NULL ve UNIQUE kombinasyonudur. Her tablo için bir tane mevcuttur.FOREIGN KEY Başka bir tablonun PRIMARY KEY'i geçerli tabloda FOREIGN KEY olarak adlandırılır.CHECK Bir tablonun kolonlarının özel bir koşula bağlı olarak atanmasını sağlar. Örneğin, ilgili kolona 0'dan küçük sayılar girilememesi gibi.DEFAULT Tabloya bir veri eklendiğinde ilgili kolona ait bir değer yoksa, hali hazırda bulunan DEFAULT değer kullanılır.INDEX Veritabanına hızlı veri kaydetmek ve almak için indexleme yapar.

SQL Ders43 - CONSTRAINTS | INDEX

INDEX
Veritabanına hızlı veri kaydetmek ve almak için indexleme yapar.


CREATE UNIQUE INDEX index_ismi
ON tablo_ismi (kolon1, kolon2, ...);



CREATE INDEX index_ismi
ON tablo_ismi (kolon1, kolon2, ...);


INDEX sınırlandırmasını silme


DROP INDEX table_ismi .index_ismi;







SQL Ders42 - CONSTRAINTS | DEFAULT

DEFAULT
Tabloya bir veri eklendiğinde ilgili kolona ait bir değer yoksa, hali hazırda bulunan DEFAULT değer kullanılır.


CREATE TABLE tablo_ismi(
degisken_ismi degisken_tipi DEFAULT deger;
);


DEFAULT sınırlandırmasını daha önce oluşturulmuş bir tabloya ekleme


ALTER TABLE tablo_ismi
ALTER COLUMN kolon_ismi SET DEFAULT deger;


DEFAULT sınırlandırmasını silme


ALTER TABLE tablo_ismi
ALTER COLUMN kolon_ismi DROP DEFAULT;


SQL Ders41 - CONSTRAINTS | CHECK

CHECK
Bir tablonun kolonlarının özel bir koşula bağlı olarak atanmasını sağlar. Örneğin, ilgili kolona 0'dan küçük sayılar girilememesi gibi.


CREATE TABLE tablo_ismi(
degisken_ismi degisken_tipi CHECK (kosul)
);


veya


CREATE TABLE tablo_ismi(
degisken_ismi degisken_tipi
CONSTRAINT sınırlandırma_ismi CHECK (kosul)
);


CHECK sınırlandırmasını daha önce oluşturulmuş bir tabloya ekleme


ALTER TABLE tablo_ismi
ADD CHECK (kosul);


veya


ALTER TABLE tablo_ismi
ADD CONSTRAINT sınırlandırma_ismi CHECK (kosul)


CHECK sınırlandırmasını silme


ALTER TABLE tablo_ismi
DROP CONSTRAINT  sınırlandırma_ismi;