/* Création table des régions */ CREATE TABLE REGIONS ( ID_REGION INTEGER NOT NULL, NOM_REGION VARCHAR(50) NOT NULL ); /* Création clé primaire sur REGION */ ALTER TABLE REGIONS ADD PRIMARY KEY(ID_REGION); /* Création table des villes */ CREATE TABLE VILLES ( ID_VILLE INTEGER NOT NULL, NOM_VILLE VARCHAR(50) NOT NULL, FK_ID_REGION INTEGER NOT NULL ); /* Création clé primaire sur VILLES */ ALTER TABLE VILLES ADD PRIMARY KEY(ID_VILLE); /* Création clé étrangère VILLES-REGIONS */ ALTER TABLE VILLES ADD FOREIGN KEY(FK_ID_REGION) REFERENCES REGIONS(ID_REGION) ON DELETE CASCADE; /* Tu peux aussi ajouter ON UPDATE CASCADE si tu veux que la clé étrangère soit mise à jour lors de l'update de la clé de REGIONS */ /* Création de la table des communes */ CREATE TABLE COMMUNES( ID_COMM INTEGER NOT NULL, NOM_COMM VARCHAR(50) NOT NULL, FK_ID_VILLE INTEGER NOT NULL ); /* Création clé primaire sur COMMUNES */ ALTER TABLE COMMUNES ADD PRIMARY KEY(ID_COMM); /* Création clé étrangère COMMUNES-VILLES */ ALTER TABLE COMMUNES ADD FOREIGN KEY(FK_ID_VILLE) REFERENCES VILLES(ID_VILLE) ON DELETE CASCADE;
DELETE FROM REGIONS WHERE ID_REGION = [N° de la région à supprimer];
<gras>On delete cascade</gras>n'est pas une requette, mais plus tot une option dans la commande de creation de contarinte de clé etrangere a mon avis