Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    795

    [mysql] Innodb e CASCADE

    Ciao a tutti, allora:
    ho due tabelle, img_prod e prodotti

    CREATE TABLE `prodotti` (
    `id` int(6) unsigned NOT NULL auto_increment,
    `nome` varchar(255) default NULL,
    `descrizione` text,
    `data_prod` date default NULL,
    `data_mod` datetime default '0000-00-00 00:00:00',
    PRIMARY KEY (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;


    CREATE TABLE `img_prod` (
    `Id` int(6) unsigned NOT NULL auto_increment,
    `id_prod` int(6) unsigned NOT NULL default '0',
    `image` mediumblob,
    PRIMARY KEY (`Id`),
    KEY `id_prod` (`id_prod`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;

    ALTER TABLE `img_prod`
    ADD FOREIGN KEY (`id_prod`) REFERENCES `prodotti` (`id`);

    Insomma, ho ste due tabelle innodb con un costraint: i prodotti hanno n immagini, e il legame è id_prod che è uguale a prodotti.id .
    Perchè caspita, se faccio "DELETE FROM prodotti WHERE prodotti.id=5 CASCADE" (ovviamente esiste un prodotto con id = 5) mi dà errore 1064 , sintassi errata nell'utilizzo di CASCADE ?
    <sfogo> ma porco giuda, leggerlo l'help online ogni tanto! </sfogo>

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    795
    uppino
    <sfogo> ma porco giuda, leggerlo l'help online ogni tanto! </sfogo>

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.