2014-1 Veri Tabanı Yönetimi Dersi Laboratuvarı 1. Quizi (Grup 1-3-4-6)
Soru 1: Yanda verilen "Hasta" tablosunu "company-db" veri tabanına ekleniyiz. (2.5 P)
Not : Tabloyu eklerken primary key'i minimum kolon kullanarak belirleyiniz.
Bilgi : "kayit_sirasi" kolonu, hastanın, o yıl (kayit_yili) kaydolan kaçıncı hasta olduğunu tutmaktadır.
Cevap 1: CREATE TABLE hasta(
adi varchar(50) not null,
soyadi varchar(50) not null,
dogumtarihi date,
dogumyeri varchar(50),
sigortaturu smallint default 1,
kayit_yili numeric(4) not null,
kayit_sirasi numeric(11) not null,
primary key(kayit_yili, kayit_sirasi)
);
Soru 2-a): "Hasta" tablosuna kendi kişisel bilgilerinizi kullanarak bir girdi yapınız. (1 P)
Cevap 2-a): INSERT INTO hasta(adi, soyadi, dogumtarihi, dogumyeri, sigortaturu, kayit_yili, kayit_sirasi)
VALUES('Zeynep', 'Başakakan', '01-01-1990', 'İzmir', 7, 2011, 742);
Soru 2-b): "Hasta" tablosuna anne_kizlik_soyadi char(100) tipinde bir kolon ekleniyiz. (0.5 P)
Cevap 2-b): ALTER TABLE hasta ADD COLUMN anne_kizlik_soyadi char(100);
Soru 3: Tüm kadın akrabaların ilişki türünü "Görümce" olarak değiştiriniz. (1 P)
Cevap 3: UPDATE dependent SET relationship = 'Görümce' WHERE sex = 'F';
Soru 4: "Houston" da lokasyonu olan departmanlarda çalışanların adlarını ve doğum tarihlerini listeleyiniz. (2.5 P)
Cevap 4: SELECT fname, bdate FROM employee e, dept_locations dl WHERE dl.dnumber = e.dno AND dl.dlocation =
'Houston';
Soru 5: "ProductX" projesinde çalışanların akrabalarının (yakınlarının) isimlerini listeleyiniz. (2.5 P)
Cevap 5: SELECT d.dependent_name FROM works_on wo, dependent d, project p WHERE p.pnumber = wo.pno AND
wo.essn = d.essn AND p.pname = 'ProductX';
2014-1 Veri Tabanı Yönetimi Dersi Laboratuvarı 1. Quizi (Grup 2-5-7)
Soru 1: Yanda verilen "Asker" tablosunu "company-db" veri tabanına ekleniyiz. (2.5 P)
Not : Tabloyu eklerken primary key'i minimum kolon kullanarak belirleyiniz.
Bilgi : "celp_sirasi" kolonu, askerin, o celp döneminde askere alınan kaçıncı kişi olduğunu tutmaktadır.
Cevap 1: CREATE TABLE asker(
adi char(50) not null,
soyadi char(50) not null,
dogumtarihi date,
dogumyeri char(50),
askerlik_subesi int default 1,
celp_donemi numeric(5) not null,
celp_sirasi numeric(11) not null,
primary key(celp_donemi, celp_sirasi)
);
Soru 2-a): "Asker" tablosuna kendi kişisel bilgilerinizi kullanarak bir girdi yapınız. (1 P)
Cevap 2-a): INSERT INTO asker(adi, soyadi, dogumtarihi, dogumyeri, askerlik_subesi, celp_donemi, celp_sirasi)
VALUES('Osman', 'Dikbaş', '01-01-1980', 'Ankara', 2, 2014, 112);
Soru 2-b): "Asker" tablosuna birligi varchar(100) tipinde bir kolon ekleniyiz. (0.5 P)
Cevap 2-b): ALTER TABLE asker ADD COLUMN birligi varchar(100);
Soru 3: Tüm erkek çalışanların adresini "Esenler/İstanbul" olarak değiştiriniz. (1 P)
Cevap 3: UPDATE employee SET address = 'Esenler/İstanbul' WHERE sex = 'M';
Soru 4: Yöneticisinin SSN'i "333445555" olan departmanlarda çalışanların soyadlarını ve maaşlarını listeleyiniz. (2.5 P)
Cevap 4: SELECT lname, salary FROM employee e, department d WHERE d.dnumber = e.dno AND d.mgrssn =
'333445555';
Soru 5: "Hardware" departmanında çalışanların akrabalarının (yakınlarının) doğum tarihlerini listeleyiniz. (2.5 P)
Cevap 5: SELECT d.bdate FROM dependent d, employee e, department dp WHERE dp.dnumber = e.dno AND e.ssn =
d.essn AND dp.dname = 'Hardware';
2014-1 Veri Tabanı Yönetimi Dersi Laboratuvarı 1. Quizi Telafi Soruları
Soru 1: Yanda verilen "Memur" tablosunu "company-db" veri tabanına ekleniyiz. (2.5 P)
Not : Tabloyu eklerken primary key'i minimum kolon kullanarak belirleyiniz.
Bilgi : "iseAlimSirasi" kolonu, memurun, o yıl (iseBaslamaYili) işe alınan kaçıncı memur olduğunu tutmaktadır.
Cevap 1: CREATE TABLE memur(
adi varchar(50) not null,
soyadi varchar(50) not null,
dogumtarihi date,
dogumyeri varchar(50),
gorevyeri smallint default 34,
iseBaslamaYili numeric(4) not null,
iseAlimSirasi numeric(11) not null,
primary key(iseBaslamaYili, iseAlimSirasi)
);
Soru 2-a): "Memur" tablosuna kendi kişisel bilgilerinizi kullanarak bir girdi yapınız. (1 P)
Cevap 2-a): INSERT INTO memur(adi, soyadi, dogumtarihi, dogumyeri, gorevyeri, iseBaslamaYili, iseAlimSirasi)
VALUES('Ceyhun', 'Kıtkanaat', '01-01-1970', 'Sinop', 35, 1991, 12456);
Soru 2-b): "Memur" tablosuna sendika_ismi char(100) tipinde bir kolon ekleniyiz. (0.5 P)
Cevap 2-b): ALTER TABLE memur ADD COLUMN sendika_ismi char(100);
Soru 3: Maaşı 50000'den büyük olan çalışanların soyadını "Varlıklı" olarak değiştiriniz (1 P)
Cevap 3: UPDATE employee SET lname = 'Varlıklı' WHERE salary > 50000;
Soru 4: "Houston" da lokasyonu olan projelerin departman numaralarını ve departman isimlerini listeleyiniz. (2.5 P)
Cevap 4: SELECT dnumber, dname FROM department d, project p WHERE p.dnum = d.dnumber AND p.plocation =
'Houston';
Soru 5: "Sam" isminde akrabası (yakını) olan çalışanın yöneticisinin çalıştığı projelerin numaralarını listeleyiniz. (2.5 P)
Cevap 5: SELECT wo.pno FROM employee e, works_on wo, dependent d WHERE d.essn = e.ssn AND e.superssn =
wo.essn AND d.dependent_name = 'Sam';
Download

2014-1 Veri Tabanı Yönetimi Dersi Laboratuvarı 1. Quizi (Grup 1-3-4