Visualizzazione dei risultati da 1 a 4 su 4

Discussione: [MySQL] Delete Cascade

  1. #1

    Delete Cascade

    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:

    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;
    La relazione tra categoria e sottocategoria è ok. Problema tra articoli e le altre due tabelle.
    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

  2. #2
    Ciao,

    gentilmente, maggiore attenzione al regolamento: va specificato il nome della piattaforma del database nel titolo, in questo caso MySQL.

    Per questa volta sistemo io ma, come ho detto prima, più attenzione please
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  3. #3

  4. #4
    NO SPAM!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.