ho un problemino che non riesco a risolvere:
quando faccio
mi restituisce l'errore: "violazione della restrizione di chiave esterna"codice:delete from pi where id=10
anche se ho inserito la clausola "DELETE ON CASCADE"
il database è organizzato così:
praticamente ci sono tanti progetti che possono avere tanti pi, e ogni pi può appartenere a tanti progetti.codice:CREATE table pi ( ID_PI INTEGER NOT NULL PRIMARY KEY GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1), NOME VARCHAR(30), INDIRIZZO VARCHAR(30) ); CREATE table progetti ( ID_PROG INTEGER NOT NULL PRIMARY KEY GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1), NOME VARCHAR(30) ); CREATE table relazioni ( ID_relp INTEGER NOT NULL PRIMARY KEY GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1), Foreign Key (fk_pi) references PI(ID_PI) on delete cascade, foreign Key (fk_idprog) references PROGETTI(ID_PROG) on delete cascade );
però mi dà l'errore che ho scritto all'inizio quando provo a cancellare un pi, ho dimenticato qualcosa?
Grazie e scusate se la domanda è un pò ingenua, ma ho letto da diverse fonti guide varie e mi sembra che il codice sia corretto!
![]()

Rispondi quotando
VVoVe:
