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

Looping Discussion :

Ajouter "ON DELETE CASCADE" à une Foreign Key


Sujet :

Looping

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2024
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2024
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Ajouter "ON DELETE CASCADE" à une Foreign Key
    Nom : Capture d'écran 2024-01-17 115442.png
Affichages : 225
Taille : 30,8 Ko

    Bonjour, j'aimerais ajouter ON DELETE CASCADE à ma FOREIGN KEY, est-ce possible et si oui comment ?

    Merci pour votre réponse.

  2. #2
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 126
    Points : 31 659
    Points
    31 659
    Billets dans le blog
    16
    Par défaut
    Bonjour,


    Citation Envoyé par Dylan
    j'aimerais ajouter ON DELETE CASCADE à ma FOREIGN KEY, est-ce possible et si oui comment ?
    C’est possible. Il suffit par exemple de cliquer sur la patte d’association connectant Rentals et Has. Simplement, la clause prend effet au niveau SQL : ainsi voyez le CODE SQL généré par Looping (Create table Rental_Images).

    Attention : les termes FOREIGN KEY et ON DELETE CASCADE ne sont pas du niveau MCD, ils font seulement partie du langage SQL.

  3. #3
    Membre émérite
    Avatar de Paprick
    Homme Profil pro
    Professeur des Universités
    Inscrit en
    Juin 2019
    Messages
    714
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Professeur des Universités
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2019
    Messages : 714
    Points : 2 915
    Points
    2 915
    Par défaut
    Bonsoir,

    Le choix apparait sur les pattes à cardinalités multiples (0,n / 1,n) à condition de valider l'option "Proposer cascade" dans la partie "MLD-SQL" de la fenêtre "Propriétés".

    Bonne continuation !

  4. #4
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 126
    Points : 31 659
    Points
    31 659
    Billets dans le blog
    16
    Par défaut
    Bonsoir,

    Citation Envoyé par Paprick Voir le message
    Le choix apparaît sur les pattes à cardinalités multiples (0,n / 1,n) à condition de valider l'option "Proposer cascade" dans la partie "MLD-SQL" de la fenêtre "Propriétés".
    L’option en question, à savoir "Proposer cascade" permet de faire son choix, par exemple celui-ci :


    Mais cette option est-elle essentielle ? Quel inconvénient y aurait-il à ce qu’elle disparaisse ?

    En effet, elle ne concerne que celui qui sait ce dont il s’agit (et selon toute vraisemblance cochera "Delete/Update validé"...)

    Autrement dit, autant agir directement au niveau "cardinalité" :
     
     

    Où l'on a systématiquement l’équivalent de toutes les possibilité prévues, il suffit de cocher ou non les cases qui nous conviennent...

  5. #5
    Membre émérite
    Avatar de Paprick
    Homme Profil pro
    Professeur des Universités
    Inscrit en
    Juin 2019
    Messages
    714
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Professeur des Universités
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2019
    Messages : 714
    Points : 2 915
    Points
    2 915
    Par défaut
    Bonsoir,
    Citation Envoyé par fsmrel Voir le message
    Mais cette option est-elle essentielle ? Quel inconvénient y aurait-il à ce qu’elle disparaisse ?
    En effet, elle ne concerne que celui qui sait ce dont il s’agit (et selon toute vraisemblance cochera "Delete/Update validé"...)
    Autrement dit, autant agir directement au niveau "cardinalité": Où l'on a systématiquement l’équivalent de toutes les possibilités prévues, il suffit de cocher ou non les cases qui nous conviennent...
    Les options permettent, dans un premier temps, de ne pas encombrer la fenêtre des cardinalités si la fonction n'intéresse pas le concepteur.
    Ensuite, le fait que les cases soient cochées par défaut est proposé pour gagner du temps : en effet, certains concepteurs voudront systématiquement "cascader" et n'auront pas en entrer dans la fenêtre "cardinalité" pour cocher les cases ; d'autres préfèreront ne faire les cascades qu'à la demande et choisiront alors des cases décochées par défaut...
    Bref, chacun peut ainsi choisir la façon dont Looping propose les choix par défaut.

  6. #6
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 126
    Points : 31 659
    Points
    31 659
    Billets dans le blog
    16
    Par défaut
    Citation Envoyé par Paprick Voir le message
    Les options permettent, dans un premier temps, de ne pas encombrer la fenêtre des cardinalités si la fonction n'intéresse pas le concepteur.
    Ensuite, le fait que les cases soient cochées par défaut est proposé pour gagner du temps : en effet, certains concepteurs voudront systématiquement "cascader" et n'auront pas en entrer dans la fenêtre "cardinalité" pour cocher les cases ; d'autres préfèreront ne faire les cascades qu'à la demande et choisiront alors des cases décochées par défaut...
    Bref, chacun peut ainsi choisir la façon dont Looping propose les choix par défaut.
    D'accord, Paprick, tu es un sage

  7. #7
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 409
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 409
    Points : 40 016
    Points
    40 016
    Billets dans le blog
    9
    Par défaut
    Et comment active-t-on "ON DELETE RESTRICT" ? Option fréquente sur les sites Mainframe (et DB2 for Z/OS du coup) sur lesquels j'interviens le plus souvent.

  8. #8
    Membre émérite
    Avatar de Paprick
    Homme Profil pro
    Professeur des Universités
    Inscrit en
    Juin 2019
    Messages
    714
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Professeur des Universités
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2019
    Messages : 714
    Points : 2 915
    Points
    2 915
    Par défaut
    Bonjour,
    Citation Envoyé par escartefigue Voir le message
    Et comment active-t-on "ON DELETE RESTRICT" ? Option fréquente sur les sites Mainframe (et DB2 for Z/OS du coup) sur lesquels j'interviens le plus souvent.
    En dessous des options "ON DELETE CASCADE" et "ON UPDATE CASCADE", tu as une case "Autre" qui te permet d'indiquer n'importe quelle autre option.

Discussions similaires

  1. Ajout de contraintes On Delete Cascade sur des foreign key
    Par weebo dans le forum Développement
    Réponses: 7
    Dernier message: 21/02/2011, 11h03
  2. Ajouter on delete cascade sur une table
    Par stalemate97 dans le forum SQL
    Réponses: 2
    Dernier message: 13/05/2010, 22h44
  3. [SQL2K] delete cascade d'une table sur elle même
    Par StormimOn dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 25/04/2006, 17h28
  4. suppression d'une foreign key
    Par GMI dans le forum InterBase
    Réponses: 7
    Dernier message: 01/02/2005, 12h07
  5. [débutant] Aide pour mettre une FOREIGN KEY sur une table
    Par cauldron dans le forum Langage SQL
    Réponses: 2
    Dernier message: 14/11/2004, 18h16

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