KIRJAT

 

 

 

Nimi

Tyyppi

Kuvaus

 

 

 

 

avain

kirjaID

char(4)

Teoksen tunnisternumero

avain

ISBN

char(15)

Teoksen ISBN-tunnus

 

nimi

char(45)

Teoksen nimi

 

kirjailija

char(30)

Teoksen kirjoittaja

 

tyyppi

char(20)

Teoksen tyyppi

 

pvuosi

smallint

Painovuosi

 

kustantaja

char(20)

Kustantaja

 

 

 

 

 

KIRJASTO

 

 

 

 

 

 

avain

ISBN

char(15)

Teoksen ISBN-tunnus

 

kpl

char(2)

Kappalemäärä

 

 

 

 

 

LAINAAJAT

 

 

 

 

 

 

avain

lainaajaID

char(4)

Lainaajan tunnus

avain

hetu

char(11)

Henkilötunnus

 

nimi

char(20)

Lainaajan nimi

 

osoite

char(40)

Osoitetidot

 

puhnro

char(15)

Puhelinnumero

 

 

 

 

 

LAINAUKSET

 

 

 

 

 

 

avain

ISBN

char(15)

Teoksen ISBN-tunnus

avain

lainaajaID

char(4)

Lainaajan tunnus

 

laina_pvm

date

Lainaus päivämäärä

 

palautus_pvm

date

Lainaus päivämäärä + 30 vrk

Taulukoiden suunnittelu ja nimeäminen

 

 

Perusavain tulee olla yksilöivä, kaksoisarvoa ei voi olla.

Näin sen avulla voi tehdä kyselyjä ja liittää muihin taulukoihin.

Näissä taulukoissa valitsin perusavaimiksi:

 

 

Vierasvaimiksi tuli:

 

 

 

 

 

 

 

 

 

 

 

 

 

Taulukoiden ja avaimien luonti

 

Luodaan taulukot:

 

CREATE TABLE KIRJASTO

(ISBN CHAR(15) PRIMARY KEY,

kpl CHAR(2) NOT NULL);

 

CREATE TABLE KIRJAT        

(kirjaID CHAR(4) NOT NULL,

ISBN CHAR(15) ,

nimi CHAR(45) NOT NULL,

kirjailija CHAR(30) NOT NULL,

tyyppi CHAR(20) NOT NULL,

pvuosi SMALLINT,                      

kustantaja CHAR(20) NOT NULL,

PRIMARY KEY (kirjaID)

FOREIGN KEY(ISBN)

REFERENCES KIRJASTO);

 

CREATE TABLE LAINAUKSET

(lainaajaID CHAR(4)  NOT NULL,

hetu CHAR(11) NOT NULL,

ISBN CHAR(15) ,

laina_pvm DATE,

palautus_pvm DATE,

PRIMARY KEY (lainaajaID)

FOREIGN KEY(ISBN)

REFERENCES KIRJASTO);

 

CREATE TABLE LAINAAJAT

(hetu CHAR(11)  NOT NULL,

lainaajaID CHAR(4) NOT NULL,

nimi CHAR(20) NOT NULL,        

osoite CHAR(40) NOT NULL,

puhnro CHAR(15),

PRIMARY KEY (hetu)

FOREIGN KEY(lainaajaID)

REFERENCES LAINAUKSET);

 


Uuden kirjan tietojen lisäys:

 

INSERT INTO KIRJAT

VALUES (’0005’,’951-1-14776-5’,’Jäätynyt enkeli’,’Reijo Mäki’,’Jännitys’,1997,’Otava’);

 

Uuden lainaajan tietojen lisäys:

 

INSERT INTO LAINAAJAT

VALUES (‘lainaajaID’,’hetu’,’nimi’,’osoite’,’puhnro);

 

Lainaajan osoitetietojen muutos hetu:n perusteella:

 

UPDATE LAINAAJAT

SET osoite = Mäkitie 3 as 8 08200 Lohja,

WHERE hetu = ’120459-147H’;