24 Mayıs 2014 Cumartesi

Constraint Örnek

   Constraintlerin bulunduğu bir örnek;



create table musteriler(musno int primary key,
madi varchar(20), msoyadi varchar(20))

create table personell (perno int not null, padi varchar(20), psoyadi varchar(20))



alter table personell
add constraint pkperno
primary key(perno)
--Alter table ile amaçlanan şey tabloyu seçerek içine girmek. Add constraintle pkperno adlı constraint oluşturuyoruz. Ve Primary key(perno) ile de perno bölümünü primary key yapıyoruz.

create table siparisler(
sipno int primary key,
cinsi varchar(20), miktarı int,
musno int foreign key references musteriler(musno))


create table personeldetaylar(
perdetno int primary key,
pmaas money, pkidem varchar(20),
perno int)


alter table personeldetaylar
add constraint fkperno
foreign key(perno) references personell(perno)
--Alter table ile amaçlanan şey tabloyu seçerek içine girmek. Add constraintle fkperno adlı constraint oluşturuyoruz. Ve foreign key(perno) ile de perno bölümünü personell tablosunun perno alanından referans alıyoruz.



create table siparisdetaylar(
sipdetno int,
marka varchar(20),renk  varchar(20),
sipno int

constraint pksipno primary key(sipdetno)
constraint fksipno foreign key(sipdetno)
references siparisler(sipno)


on delete cascade
on update cascade)

Tablo kayıt girişleri;
--Siparişler

insert into musteriler values (1,'dilara','onur')
insert into musteriler values (2,'nergis','harmankaya')
insert into musteriler values (3,'ipek','inci')
select * from siparişler



--Müşteriler

insert into siparisler values(1,'kalem',20,2)
insert into siparisler values(2,'silgi',10,1)
insert into siparisler values(3,'defter',30,3)

select * from musteriler


--Sipariş Detaylar

insert into siparisdetaylar values(1,'faber','kırmızı',1)
insert into siparisdetaylar values(2,'micro','sarı',2)
insert into siparisdetaylar values(3,'yıldız','yeşil',3)
insert into siparisdetaylar values(4,'faber','mavi',1)

select * from siparisdetaylar




delete siparisler where sipno=2
Burada siparişler tablosundaki sipnosu 2 olan kayıtı siliyoruz.

update siparisler set sipno=7 where sipno=1

burada siparişler tablosunda sipnosu 1 olan kayıdın sipnosunu 7 yapıyoruz.

Hiç yorum yok:

Yorum Gönder