Mysql de yaptığımız lise veri tabanı tasarımının aynısını postgresql veri tabanında yapalı. Veri tabanında bulunan tabloları ve birbiri ile ilişkilerine karar verdiğimiz tasarım öncesi notlara buradan bakabilirsiniz.
Veri tabanını kodlarken, ilişkileri, kısıtlayıcıları da ekleyerek yazmamız gerekiyor.
Lise Veri tabanı DDK Tasarım komutları:
create table il(
il_id serial primary key,
il varchar(80)
);
create table ilce(
ilce_id serial primary key,
ilce varchar(80),
il_id integer references il(il_id)
);
create table okul(
okul_id serial primary key,
okul_adi varchar(200),
ilce_id integer references ilce(ilce_id)
);
create table ogretmen(
ogretmen_id serial primary key,
ad_soyad varchar(100),
meslek varchar(100),
telefon varchar(15),
cinsiyet char(1) check(cinsiyet='K' or cinsiyet='E'),
okul_id integer references okul(okul_id)
);
create table ders(
ders_id serial primary key,
ders_adi varchar(80) not null,
ders_kod varchar(5) UNIQUE,
ders_tur char(1) CHECK(ders_tur='y' or ders_tur='d'),
ogretmen_id integer references ogretmen(ogretmen_id)
);
create table ogrenci(
ogrenci_id serial primary key,
ad_soyad varchar(100),
veli varchar(20),
telefon varchar(15),
cinsiyet char(1) check(cinsiyet='K' or cinsiyet='E') ,
okul_id integer references okul(okul_id)
);
create table dersogrenci(
do_id serial primary key,
ogrenci_id integer references ogrenci(ogrenci_id),
ders_id integer references ders(ders_id)
);
create table sinav(
sinav_id serial primary key,
sinav_adi varchar(100),
sinavt_tarihi date,
sinav_saati time
);
create table sinavdersogrenci(
sdi serial primary key,
puan real,
sinav_id integer references sinav(sinav_id),
do_id integer references dersogrenci(do_id)
);
create table yoklama(
yoklama_id serial PRIMARY key,
tarih date,
saat time,
is_check boolean DEFAULT false,
do_id integer references dersogrenci(do_id)
);
il_id serial primary key,
il varchar(80)
);
create table ilce(
ilce_id serial primary key,
ilce varchar(80),
il_id integer references il(il_id)
);
create table okul(
okul_id serial primary key,
okul_adi varchar(200),
ilce_id integer references ilce(ilce_id)
);
create table ogretmen(
ogretmen_id serial primary key,
ad_soyad varchar(100),
meslek varchar(100),
telefon varchar(15),
cinsiyet char(1) check(cinsiyet='K' or cinsiyet='E'),
okul_id integer references okul(okul_id)
);
create table ders(
ders_id serial primary key,
ders_adi varchar(80) not null,
ders_kod varchar(5) UNIQUE,
ders_tur char(1) CHECK(ders_tur='y' or ders_tur='d'),
ogretmen_id integer references ogretmen(ogretmen_id)
);
create table ogrenci(
ogrenci_id serial primary key,
ad_soyad varchar(100),
veli varchar(20),
telefon varchar(15),
cinsiyet char(1) check(cinsiyet='K' or cinsiyet='E') ,
okul_id integer references okul(okul_id)
);
create table dersogrenci(
do_id serial primary key,
ogrenci_id integer references ogrenci(ogrenci_id),
ders_id integer references ders(ders_id)
);
create table sinav(
sinav_id serial primary key,
sinav_adi varchar(100),
sinavt_tarihi date,
sinav_saati time
);
create table sinavdersogrenci(
sdi serial primary key,
puan real,
sinav_id integer references sinav(sinav_id),
do_id integer references dersogrenci(do_id)
);
create table yoklama(
yoklama_id serial PRIMARY key,
tarih date,
saat time,
is_check boolean DEFAULT false,
do_id integer references dersogrenci(do_id)
);
Lise veritabanına sağ tıklayıp ERD Diyagram şemasına bakalım:
Hiç yorum yok:
Yorum Gönder