






Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Cenni sull'integrità referenziali da applicare su un database generale e nel caso più specifico su mySQL.
Tipologia: Dispense
1 / 11
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!







nome varchar(20) not null
create table dipendente ( cf char(16) primary key, nome varchar(20), cognome varchar(20), )
create table dipendente ( nome varchar(20), cognome varchar(20), dataDiNascita date, luogoDiNascita varchar(20), primary key (nome, cognome) )
create table dipendente ( cf char(16) primary key, nome varchar(20), cognome varchar(20), unique (nome, cognome) )
create table biglietteria ( nome varchar(20) primary key, indirizzo varchar(40) not null, teatro varchar(20) foreign key references teatro(nome) on update cascade on delete set null )
create table teatro ( nome varchar(20) primary key, indirizzo varchar(40) not null ) create table dipendente ( cf char(16) primary key, nome varchar(20) not null, cognome varchar(20) not null, dataDiNascita date, luogoDiNascita varchar(30), capo char(16), foreign key capo references dipendente(cf) ) create table lavoro ( teatro varchar(20), dipendente char(16), primary key(teatro, dipendente), foreign key teatro references teatro(nome), foreign key dipendente references dipendente(cf), check(2 >= (select count(*) from lavoro L where dipendente = L.dipendente)) )
cf char(16) primary key, nome varchar(20) not null, cognome varchar(20) not null, dataDiNascita date, luogoDiNascita varchar(30), capo varchar(20), foreign key capo references dipendente(cf), check (luogoDiNascita <> "Milano" or dataDiNascita < '1970- 01 - 01') )
create assertion vincoloDipendentiTeatro check ( not exists (select nome from teatro where nome not in (select teatro from lavoro)) and not exists (select count() from lavoro group by teatro having count() < 5) )
create assertion vincoloTeatriRete check ( 3 <= (select count(*) from teatro) )
create trigger LimitaIncrementoStipendio after update of stipendio on dipendente for each row when (New.stipendio > Old.Stipendio * 1.2) update dipendente set New.stipendio = Old.Stipendio * 1. where cf = New.cf
create trigger disponibilità- 1 after insert on messaInScena for each row
create trigger CalcolaPrezzoRidottoInsert after insert on messaInScena for each row update messaInScena set New.prezzoRidotto = New.prezzoIntero * 0. where codice = New.codice create trigger CalcolaPrezzoRidottoUpdate after update of prezzoIntero on messaInScena for each row update messaInScena set New.prezzoRidotto = New.prezzoIntero * 0. where codice = New.codice
create table dipendente ( cf char(16) primary key, nome varchar(20) not null, cognome varchar(20) not null, indirizzo varchar(30), constraint chiaveCandidata unique(nome, cognome) ) alter table dipendente drop constraint chiaveCandidata alter table dipendente add constraint chiaveCandidata unique(indirizzo)