Salve a tutti,
ho compreso l'efficacia del Cascade, tuttavia, per inesperienza, sto commettendo delle imprecisioni.
Questo il dump delle tre tabelle sulle quali sto lavorando:
La relazione tra categoria e sottocategoria è ok. Problema tra articoli e le altre due tabelle.codice:create table if not exists `hcat_it` ( `idcat` int(5) not null auto_increment , `ID` int(8) zerofill unsigned not null unique , `categoria` varchar(255) null , primary key (`idcat`) ) engine = innodb; create table if not exists `hsubcat_it` ( `idsub` int not null auto_increment , `idcat` int(5) zerofill not null , `ID` int(8) zerofill unsigned not null , `objectID` int(8) zerofill not null , `subcategoria` varchar(50) null , primary key (`idsub`) , index `fk_hsubcat_it_hcat_it` (`ID` asc) , constraint `fk_hsubcat_it_hcat_it` foreign key (`ID` ) references `hcat_it` (`ID` ) on delete cascade on update cascade) engine = innodb; $query="create table if not exists `harticoli_it` ( `idart` int(5) not null auto_increment, `ID` int(8) zerofill unsigned not null , `objectID` int(8) unsigned not null , `idcat` int(5) not null , `idsub` int(5) not null , `articolo` varchar(255) not null , `descrizione` varchar(255) not null , `dettaglio` varchar(255) not null , `prezzo` varchar(50) not null , `sconto` varchar(50) not null , `immagine` varchar(255) not null , `immagine2` varchar(255) not null , `immagine3` varchar(255) not null, `thumb` varchar(255) not null, `promozioni` varchar(50) , `novita` varchar(50), `esclusivo` varchar(50), primary key (`idart`) , index `fk_harticoli_it_hsubcat_it` (`objectID` asc) , constraint `fk_harticoli_it_hsubcat_it` foreign key (`objectID` ) references `hsubcat_it` (`tID` ) on delete cascade on update cascade) engine = innodb;
Inoltre compare questo messaggio all'inserimento degli articoli da PHP:
Cannot add or update a child row: a foreign key constraint fails (`XXX/harticoli_it`, CONSTRAINT `fk_harticoli_it_hsubcat_it` FOREIGN KEY (`objectID`) REFERENCES `hsubcat_it` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE

Rispondi quotando
