salve,
utilizzando MySQL mi sono accorto che non viene rispettato il vincolo di check.
Nel mio esempio, posso inserire un voto anche minore di 18 (nonostante il vincolo).
Come posso risolvere?
create table db.studente (
matricola int not null,
primary key (matricola)
);
create table db.esame (
idEsame int not null,
voto int not null CHECK (voto>=18 AND voto<=30),
matricola int not null,
primary key (idEsame),
foreign key (matricola) references db.studente(matricola) on delete cascade
);
(engine INNODB)