Bonjour,

Suite à mon dernier post, je me suis apperçu que j'ai un soucis global avec CASCADE, et pas seulement avec une double clé étrangère.

Je tente donc de faire fonctionner une relation toute simple :



Voici le code SQL de mes tables :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
CREATE TABLE Table_01 (
  idTable_01 INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  nom_tab1 TEXT NULL,
  PRIMARY KEY(idTable_01)
)
TYPE=InnoDB;
 
CREATE TABLE Table_03 (
  idTable_03 INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  Table_01_idTable_01 INTEGER UNSIGNED NOT NULL,
  nom_tab3 TEXT NULL,
  PRIMARY KEY(idTable_03),
  INDEX Table_03_FKIndex1(Table_01_idTable_01),
  FOREIGN KEY(Table_01_idTable_01)
    REFERENCES Table_01(idTable_01)
      ON DELETE CASCADE
      ON UPDATE CASCADE
)
TYPE=InnoDB;
Lorsque je supprime des enregistrement de Table_01, il ne se passe rien sur la Table_03, CASCADE ne semble pas pris en compte.

J'effectue un simple

Code : Sélectionner tout - Visualiser dans une fenêtre à part
DELETE FROM Table_01 WHERE nom_tab1 = 'test'
Auriez-vous une idée là-dessus ?

En vous remerciant,

C. Tobini