Je commence à expérimenter avec InnoDB dans les applications web. J'ai configuré certaines tables avec une clé étrangère, mais elles ne se comportent pas comme prévu. Voici ma table créer des instructions:MySQL InnoDB CASCADE?
CREATE TABLE sections (
section_id INT NOT NULL AUTO_INCREMENT,
title VARCHAR(30),
created_at int(10) NOT NULL,
updated_at int(10) NOT NULL,
PRIMARY KEY(section_id)
) ENGINE=InnoDB;
CREATE TABLE pages (
page_id INT NOT NULL AUTO_INCREMENT,
section_idfk INT NOT NULL,
PRIMARY KEY(page_id),
FOREIGN KEY(section_idfk) REFERENCES sections(section_id)
ON DELETE CASCADE
ON UPDATE CASCADE
) ENGINE=InnoDB;
Les tables créent ok et je peux les remplir avec des données, cependant, je me attendais à tout changement que j'ai fait à la table des sections pour avoir un effet sur les lignes correspondantes dans la Table des pages. J'ai essayé de changer l'identifiant d'une section et aussi de supprimer une section entièrement. Dans les deux cas, la table Pages n'a pas été affectée. Est-ce que quelqu'un peut voir où je vais mal?
Un conseil apprécié.
Merci.
Vous devez faire quelque chose de mal, cela fonctionne correctement. –