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 :

Suppression de plusieurs lignes dans des tables différentes avec recordset


Sujet :

Requêtes et SQL.

  1. #1
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 62
    Points : 46
    Points
    46
    Par défaut Suppression de plusieurs lignes dans des tables différentes avec recordset
    Bonjour,
    Comme le dit le titre de cette discussion, je cherche en fait à supprimer des lignes qui proviennent de plusieurs tables différentes. Je m'explique:
    J'ai des matières premières qui possèdent des indices. Un indice possède une ou plusieurs spécifications: spécification qui correspond à une analyse. Etc ...
    Le but est que, lorsqu'un utilisateur veut supprimer une matière première, tout ce qui y est lié soit supprimé aussi.

    Actuellement, j'ai 6 requêtes différentes (une pour chaque information à récupérer) et je les supprime dans le bon ordre. Exemple :
    Set Requete = db.OpenRecordset(SqlSuppSpecification)
    Requete.Delete
    Requete.Close
    Malheureusement cela ne fonctionne pas.

    Comme j'ai écrit une requête qui, avec l'identifiant de la matière première sélectionnée, me donne toutes les informations correspondantes, je voulais savoir s'il était possible de supprimer tout d'un coup ? Je ne m'y connais pas du tout en "recordset" alors j'ai besoin que vous m'aidiez..
    J'ai vu qu'il y avait des histoires avec des moveFirst ou moveNext, mais je ne comprends pas trop...

    Merci d'avance !

  2. #2
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 863
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 863
    Points : 58 439
    Points
    58 439
    Billets dans le blog
    44
    Par défaut
    Bonjour,

    MatierePremiere-∞-----1-Indice-∞------1-Specification...

    Pour supprimer des enregistrement dans une table, tu peux lancer une requête "Action" en VBA :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    With CurrentDb
      .Execute "DELETE * FROM MatierePremiere WHERE idMatierePremiere=" & MatierePremiere_A_supprimer, dbFailOnError 
      Debug.Print .RecordsAffected & " supprimé(s)" 
    End With
    Si la suppression d'une matière première doit entraîner les indices et spécifications correspondants, dans la fenêtre des Relations, tu double-cliques sur les relations et tu coches "Effacer en cascade...".

  3. #3
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 62
    Points : 46
    Points
    46
    Par défaut
    Bonjour,

    Merci pour ta réponse très rapide !
    J'ai justement enlever les relations de suppression en cascade car j'ai rencontré des soucis dans certains formulaires.
    D'où mon besoin de toute faire par requête...

  4. #4
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 62
    Points : 46
    Points
    46
    Par défaut
    Bon, j'ai modifié mes relations et effectivement tout marche !
    J'ai cherché trop compliqué et n'osais plus toucher à ce que j'avais déjà fait... Honte à moi !

    Merci beaucoup en tout cas !

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 19/07/2013, 08h18
  2. [VxiR2] Création de plusieurs requêtes dans des rapports différents
    Par bauduin-o dans le forum Webi
    Réponses: 2
    Dernier message: 13/07/2009, 10h27
  3. Insertions Paralleles dans des tables Différentes
    Par saidi.seifeddine dans le forum SQL
    Réponses: 4
    Dernier message: 14/05/2009, 12h41
  4. [MySQL] Insertion de plusieurs lignes dans une table
    Par BOUWAGGOU dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 04/05/2009, 17h55
  5. [MySQL] insérer plusieurs lignes dans une table
    Par ozyman dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 12/02/2009, 23h33

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