-- ============================================================================
-- File: \\Sauron\Esercitazioni\Basidati\Eser-2002-10-17\eser2-db.sql
-- WWW:  http://www.dis.uniroma1.it/~calvanese/didattica/02-03-basididati/
--         esercitazioni/eser-2002-10-17/eser2-db.sql
-- ============================================================================
-- Prima esercitazione di laboratorio
-- Creazione del database da utilizzare per gli esercizi 3 e 4
-- ============================================================================

-- drop table GENITORI;
-- drop table PERSONE;

create table PERSONE (
  Nome                  character(20)    primary key,
  Eta                   numeric(3),
  Reddito               numeric(10),
  Sesso                 character
    check (Sesso = 'M' or Sesso = 'F'),
  Residenza             character(20)
  );

create table GENITORI (
  Genitore              character(20)  references PERSONE(Nome),
  Figlio                character(20)  references PERSONE(Nome),
  OrdFiglio             numeric(2),
  primary key (Figlio,Genitore)
  );

insert into PERSONE values ('Aldo'         , 25   , 15   , 'M' , 'Roma');
insert into PERSONE values ('Amelia'       , 79   , 30   , 'F' , 'Palermo');
insert into PERSONE values ('Andrea'       , 30   , 21   , 'M' , 'Milano');
insert into PERSONE values ('Anna'         , 50   , 35   , 'F' , NULL);
insert into PERSONE values ('AnnaMaria'    , 45   , 30   , 'F' , 'Roma');
insert into PERSONE values ('AntonGiulio'  , 45   , 40   , 'M' , 'Napoli');
insert into PERSONE values ('Beatrice'     , 79   , NULL , 'F' , 'Palermo');
insert into PERSONE values ('Ezechiele'    , 10   , 15   , 'M' , 'Roma');
insert into PERSONE values ('Filippo'      , 20   , 30   , 'M' , 'Roma');
insert into PERSONE values ('Franco'       , 60   , 20   , 'M' , NULL);
insert into PERSONE values ('Giulia'       , 20   , NULL , 'F' , 'Bolzano');
insert into PERSONE values ('Leonardo'     , 79   , NULL , 'M' , 'Milano');
insert into PERSONE values ('Luigi'        , 50   , 40   , 'M' , 'Napoli');
insert into PERSONE values ('Luisa'        , 75   , 87   , 'F' , 'Milano');
insert into PERSONE values ('Maria'        , 60   , 40   , 'F' , 'Milano');
insert into PERSONE values ('Michelangelo' , NULL , 30   , 'M' , 'Torino');
insert into PERSONE values ('Olga'         , 30   , 41   , 'F' , 'Palermo');
insert into PERSONE values ('Sergio'       , 85   , 35   , 'M' , 'Napoli');

insert into GENITORI values ('Amelia'       , 'AnnaMaria'   , NULL);
insert into GENITORI values ('Anna'         , 'Filippo'     , 2);
insert into GENITORI values ('Anna'         , 'Olga'        , 1);
insert into GENITORI values ('AnnaMaria'    , 'Ezechiele'   , 1);
insert into GENITORI values ('AntonGiulio'  , 'Ezechiele'   , NULL);
insert into GENITORI values ('Beatrice'     , 'AntonGiulio' , 1);
insert into GENITORI values ('Franco'       , 'Aldo'        , 2);
insert into GENITORI values ('Franco'       , 'Andrea'      , 1);
insert into GENITORI values ('Leonardo'     , 'AntonGiulio' , 1);
insert into GENITORI values ('Luigi'        , 'Filippo'     , 1);
insert into GENITORI values ('Luigi'        , 'Olga'        , 2);
insert into GENITORI values ('Luisa'        , 'Luigi'       , 2);
insert into GENITORI values ('Luisa'        , 'Maria'       , 1);
insert into GENITORI values ('Maria'        , 'Aldo'        , 2);
insert into GENITORI values ('Maria'        , 'Andrea'      , 1);
insert into GENITORI values ('Maria'        , 'Giulia'      , 3);
insert into GENITORI values ('Michelangelo' , 'AnnaMaria'   , 1);
insert into GENITORI values ('Sergio'       , 'Franco'      , 1);
