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

Requêtes et SQL. Discussion :

[SQL] Supprimer les enregistrements d'une table où un autre enregistrement est lié


Sujet :

Requêtes et SQL.

  1. #1
    Membre régulier

    Inscrit en
    Juin 2006
    Messages
    320
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 320
    Points : 97
    Points
    97
    Par défaut [SQL] Supprimer les enregistrements d'une table où un autre enregistrement est lié
    Bonjour à tous,

    On m'a demandé de virer des enregistrements (table STEP) où un critère est inf. à 200.
    Mais comme il y a des enregitrements liés (table GROUPE_ANALYSE), je dois d'abord supprimé ces enregistrements liés.
    Mais comme ces enregistrements liés (table GROUPE_ANALYSE) ont eux aussi des enregistrements liés (table RESULTAT_ANALYSE), il faut supprimer en premier lieu ces enregistrements.
    (Do you understand chinois? )

    Pour les relations, ça donne:
    1 STEP peut avoir 1 à n GROUPE_ANALYSE (tables liées par id_step).
    1 GROUPE_ANALYSE peut avoir 1 à n RESUTAT_ANALYSE (tables liées par id_groupe_analyse).

    J'ai voulu m'y prendre comme suit:
    NB: le tout en prenant en compte STEP.capacité <200
    1/ Sélectionner puis supprimer les enregistrements de la table RESULTATS_ANALYSES.
    2/ Sélectionner puis supprimer les enregistrements de GROUPE_ANALYSE.
    3/ Sélectionner les enregistrements de STEP et, enfin, les supprimer.


    L'étape 1: ok, il n'y a pas eu de problème. La table RESULTAT_ANALYSE en bout de chaîne "relationnelle" ne contient plus d'enregistrements pouvant correspondre aux enregistrements de GROUPE_ANALYSE.
    L'étape 2: ok, les enregistrements sélectionnés sont bien ceux correspondant à STEP.capacité < 200. Oui mais voilà: quand je sélectionne tous les enregitrements et que je lance la suppression (avec le bouton suppression d'Access, je le confesse...), le message
    Supprimer les autres messages d'erreur qui vous expliquent pourquoi il est impossible de supprimer les enregistrements?
    apparaît et répondre NON ne me donne rien. Rien ne se passe. Ni suppression, ni message, ni alerte.

    Je ne vois pas trop ce qui déconne. Vu que la table RESULTAT_ANALYSE n'a plus d'enregitrements correspondant à ceux de GROUPE_ANALYSE, pourquoi ne puis-je pas supprimer ces enregistrements de GROUPE_ANALYSE??

  2. #2
    Futur Membre du Club
    Inscrit en
    Décembre 2006
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 6
    Points : 6
    Points
    6
    Par défaut
    Bonjour,

    Ton message doit être tronqué : en règle générale, un premier message apparait indiquant le message d'erreur, puis SI ce message est répété X fois, le message que tu as cité apparaît pour éviter d'avoir X fois le message précédent.

    As-tu le détail du premier message pour voir d'où vient le problème ?

  3. #3
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 345
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 345
    Points : 23 805
    Points
    23 805
    Par défaut
    Tu peux peut-être activer la suppression en cascade mais fait une sauvegarde de ta base avant car dés fois ça supprime un peu trop.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

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

Discussions similaires

  1. supprimer les doublons dans une table
    Par mavean dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 26/06/2019, 13h26
  2. pour supprimer les doublons d'une table qcq
    Par lamjed dans le forum Oracle
    Réponses: 7
    Dernier message: 19/12/2008, 16h42
  3. [SQL] Supprimer les lignes d'une table sql
    Par radhwene dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 28/06/2007, 11h48
  4. Comment supprimer les doublons d'une table?!
    Par JauB dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 27/01/2006, 08h48
  5. SQL : compter les champs d'une table
    Par Bboy dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 26/10/2005, 16h02

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