Salve a tutti non riesco a far funzionare i vincoli di integrità referenziale.
Vi posto il codice SQL :
Tabella referenziata
Codice PHP:
CREATE TABLE Prodotto (
id INT PRIMARY KEY,
Nome VARCHAR(30) NOT NULL UNIQUE,
Genere VARCHAR(30),
Punti INT,
Reparto VARCHAR(30) REFERENCES Reparto (Nome),
Prezzo_pubblico FLOAT,
Soglia_minima INT NOT NULL,
Quantita INT,
Tempo_vendita DATE NOT NULL
);
Tabella che referenzia :
Codice PHP:
CREATE TABLE Premio (
id INT PRIMARY KEY REFERENCES Prodotto(Id),
Prodotto_associato VARCHAR(30) NOT NULL REFERENCES Prodotto (Nome),
Punti_necessari INT NOT NULL
);
Ora la cosa che dovrebbe accadere è che quando inserisco dei valori nella tabella premio sull'attributo Prodotto_associato questi valori si dovrebbero poter inserire soltanto se compaiono una ed una sola volta nell'attributo nome della tabella Prodotto.
Perchè questo non succede? Eppure le regole sintattiche e semantiche le ho seguite alla perfezione.