Originariamente inviato da ludodudu
Ho risolto.
Prima di tutto ho controllato lo stato di InnoDB, e la ragione del problema era "on delete set null" così ho cambiato la query in questo modo
codice:
create table messaInScena
  (
    data               date,  
    ora                time,
    spazio             varchar(20),
    spettacolo         varchar(40),
    postiDisponibili   smallint,
    prezzoIntero       decimal(5,2),
    prezzoRidotto      decimal(5,2),
    prezzoStudenti     decimal(5,2),
    primary key (data, ora, spazio),
    foreign key (spazio) references spazio(nome) on update cascade on delete cascade,
    foreign key (spettacolo) references spettacolo(titolo) on update cascade on delete cascade,
    constraint RA3_1 check (postiDisponibili >= 0)     
  ) ;
ora funziona!
mi fa piacere che funziona.

Ma,cosi hai dato un senso diverso al tuo progetto...