-- Generated by Erkka-Program in Wed Oct 29 11:58:26 EET 2003 -- Järjestetty lauseet oikeaan järjestykseen ja lisätty DROP TABLE -lauseet -- Korjattu Ohje-taulun perusavaimeksi yhdistetty avain ReseptiID:stä ja Vaihenro:sta -- CONSTRAINT Ohje_PK -- PRIMARY KEY (ReseptiID, Vaihenro) -- Korjattu edellisen muutoksen pakottama viiteavain ja uusi perusavain tarvii-tauluun -- CONSTRAINT tarvii_PK -- PRIMARY KEY (Aine_AineID,Ohje_Vaihenro,Ohje_ReseptiID), -- CONSTRAINT tarvii_Vaihenro -- FOREIGN KEY (Ohje_Vaihenro, Ohje_ReseptiID) -- REFERENCES Ohje (Vaihenro, ReseptiID) DROP TABLE resepti ; DROP TABLE Ruokalaji ; DROP TABLE Aine ; DROP TABLE Yksikko ; DROP TABLE Ohje ; DROP TABLE Liittyy ; DROP TABLE Tarvii ; CREATE TABLE Ruokalaji ( Nimi VARCHAR(100) NOT NULL, Kuvaus VARCHAR(250) NOT NULL, RuokalajiID INTEGER NOT NULL, CONSTRAINT Ruokalaji_PK PRIMARY KEY (RuokalajiID) ); CREATE TABLE Aine ( Nimi VARCHAR(60) NOT NULL, Kuvaus VARCHAR(250) NOT NULL, AineID INTEGER NOT NULL, CONSTRAINT Aine_PK PRIMARY KEY (AineID) ); CREATE TABLE Yksikko ( Nimi VARCHAR(20) NOT NULL, Lyhenne CHAR(2) NOT NULL, CONSTRAINT Yksikko_PK PRIMARY KEY (Lyhenne) ); CREATE TABLE Resepti ( Nimi VARCHAR(100) NOT NULL, Kuvaus VARCHAR(250) NOT NULL, Henkilomaara INTEGER NOT NULL, ReseptiID INTEGER NOT NULL, RuokalajiID INTEGER NOT NULL, CONSTRAINT Resepti_PK PRIMARY KEY (ReseptiID), CONSTRAINT Resepti_RuokalajiID FOREIGN KEY (RuokalajiID) REFERENCES Ruokalaji (RuokalajiID) ON DELETE NO ACTION ON UPDATE CASCADE ); CREATE TABLE Ohje ( Vaihenro INTEGER NOT NULL, ReseptiID INTEGER NOT NULL, Ohjeteksti VARCHAR(20) NOT NULL, CONSTRAINT Ohje_ReseptiID FOREIGN KEY (ReseptiID) REFERENCES Resepti (ReseptiID) ON DELETE NO ACTION ON UPDATE CASCADE, CONSTRAINT Ohje_PK PRIMARY KEY (ReseptiID, Vaihenro) ); CREATE TABLE Liittyy ( Maara NUMERIC(5,2) NOT NULL, Resepti_ReseptiID INTEGER NOT NULL, Aine_AineID INTEGER NOT NULL, Yksikko_Lyhenne CHAR(2) NOT NULL, CONSTRAINT Liittyy_PK PRIMARY KEY (Resepti_ReseptiID,Aine_AineID,Yksikko_Lyhenne), CONSTRAINT Liittyy_ReseptiID FOREIGN KEY (Resepti_ReseptiID) REFERENCES Resepti (ReseptiID) ON DELETE NO ACTION ON UPDATE CASCADE, CONSTRAINT Liittyy_AineID FOREIGN KEY (Aine_AineID) REFERENCES Aine (AineID) ON DELETE NO ACTION ON UPDATE CASCADE, CONSTRAINT Liittyy_Lyhenne FOREIGN KEY (Yksikko_Lyhenne) REFERENCES Yksikko (Lyhenne) ON DELETE NO ACTION ON UPDATE CASCADE ); CREATE TABLE tarvii ( Aine_AineID INTEGER NOT NULL, Ohje_Vaihenro INTEGER NOT NULL, Ohje_ReseptiID INTEGER NOT NULL, CONSTRAINT tarvii_PK PRIMARY KEY (Aine_AineID,Ohje_Vaihenro,Ohje_ReseptiID), CONSTRAINT tarvii_AineID FOREIGN KEY (Aine_AineID) REFERENCES Aine (AineID) ON DELETE NO ACTION ON UPDATE CASCADE, CONSTRAINT tarvii_Vaihenro FOREIGN KEY (Ohje_Vaihenro, Ohje_ReseptiID) REFERENCES Ohje (Vaihenro, ReseptiID) ON DELETE NO ACTION ON UPDATE CASCADE );