IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Procédural MySQL Discussion :

Problème de clé étrangère


Sujet :

SQL Procédural MySQL

  1. #1
    Invité
    Invité(e)
    Par défaut Problème de clé étrangère
    Bonjour,
    j'ai 2 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
     
    create table Pays
    (
    id int,
    Nom varchar(250),
    PRIMARY KEY(id)
    );
    create table Region
    (
    id int,
    Nom varchar(250),
    pays int,
    PRIMARY KEY(id)
    );
    ALTER TABLE Region ADD constraint FK1 FOREIGN KEY (pays)
          REFERENCES Pays (id) ON DELETE restrict ON UPDATE restrict;
    le problème c'est que si je supprime tous les enregistrements de la table pays la suppression s'effectue en ne tenant pas compte de la clé étrangère??
    merci d'avance.

  2. #2
    Membre chevronné Avatar de SphynXz
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 439
    Par défaut
    en clair :

    ON DELETE restrict ON UPDATE restrict;
    ON DELETE no action ON UPDATE no action;
    revient à ne mettre aucune clause ON DELETE & ON UPDATE,
    car vous ordonnez à votre table de ne rien faire en cas de suppression ou de modification

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ALTER TABLE Region ADD constraint FK1 FOREIGN KEY (pays)
          REFERENCES Pays (id) ON DELETE restrict ON UPDATE restrict;
    =

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ALTER TABLE Region ADD constraint FK1 FOREIGN KEY (pays)
          REFERENCES Pays (id)
    solution :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ALTER TABLE Region ADD constraint FK1 FOREIGN KEY (pays)
          REFERENCES Pays (id) ON DELETE cascade ON UPDATE cascade;

  3. #3
    Membre Expert

    Homme Profil pro
    SDE
    Inscrit en
    Août 2007
    Messages
    2 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : SDE

    Informations forums :
    Inscription : Août 2007
    Messages : 2 013
    Par défaut
    Bonjour,

    j'ai par ailleurs écrit un article qui traite de ce sujet que je te conseil de lire :
    http://alain-defrance.developpez.com/articles/SGBD/constraint/

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Merci pour vos réponses.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [phpMyAdmin] Problème création Clé étrangère (FK)
    Par irnbru dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 16/05/2007, 19h34
  2. Problème avec clé étrangère
    Par gothard dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 22/02/2007, 16h50
  3. Problème de clé étrangère
    Par sylesis dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 25/11/2006, 22h32
  4. Problème création clés étrangères
    Par sat478 dans le forum Débuter
    Réponses: 1
    Dernier message: 01/05/2006, 15h53
  5. [IB6] Problème de clef étrangère
    Par Neilos dans le forum InterBase
    Réponses: 8
    Dernier message: 28/03/2006, 19h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo