none
[RESOLU]Entrer une valeur de paramètre RRS feed

  • Question

  • Bonjour,

    Je veux mettre à jour le statut de nouveaux adhérents dans ma table Tmembres.

    J'ai une 1ère requête qui sélectionne le type d'adhésion (Rsel_type_adhésion) et qui renvoie bien le bon résultat si je l'exécute seule (le champ TEvent.type n'est qu'informatif, il n'est pas utilisé comme critère de sélection ensuite):

    SELECT TEvent.code, TEvent.type, Tabldate.Dateréunion
    FROM TEvent, tabldate
    WHERE TEvent.type Like "Adhésion*";

    Puis j'ai une seconde requête (RPrep_update_adhérant) qui sélectionne les Nomprénom et qui renvoie bien le bon résultat si je l'exécute seule:

    SELECT TParticipant.Nomprénom
    FROM Tparticipant, Tmembres, Rsel_type_adhésion
    WHERE TParticipant.Nomprénom = Tmembres.Nomprénom
    AND TParticipant.Code = Rsel_type_adhésion.code  
    AND TMembres.adheran = NO
    AND TParticipant.Date_paiemt > Rsel_type_adhésion.Dateréunion;

    et enfin, j'ai une requête de mise à jour qui change le statut et la date de l'adhérent dans la table Tmembres:

    UPDATE Tmembres SET AdherAn = Yes, DateAdhésion = Date()
    WHERE EXISTS (select * from RPrep_update_adhérant
    WHERE RPrep_update_adhérant.Nomprénom = Tmembres.NomPrénom);

    et là, ça coince, on me demande d'entrer une valeur de paramètre pour Tmembres.Nomprénom ????

    J'avoue ne pas comprendre car j'ai déjà utilisé une requête de mise à jour pratiquement identique qui fonctionne, sauf que je ne passe pas par des sous-requêtes de pré-sélection.

    Par ailleurs, Nomprénom est bien orthographié dans la table Tmembres.

    Merci d'avance pour votre aide.



    • Modifié Mauriceb77 mardi 22 novembre 2016 19:34
    lundi 21 novembre 2016 06:40

Toutes les réponses

  • Bonjour

    UPDATE Tmembres SET AdherAn = Yes, DateAdhésion = Date()
    WHERE EXISTS (select * from RPrep_update_adhérant
    WHERE RPrep_update_adhérant.Nomprénom = Tmembres.NomPrénom);

    Dans :

    select * from RPrep_update_adhérant
    WHERE RPrep_update_adhérant.Nomprénom = Tmembres.NomPrénom

    Dans la clause FROM il y a RPrep_update_adhérant mais pas de Tmembres


    Arnaud

    lundi 21 novembre 2016 14:01
  • bonjour,

    Mais bien sûr, c'était évident, j'ai pourtant cherché un certain temps......

    J'ai donc corrigé, mais un autre problème se présente:

    - la requête RPrep_update_adhérant donne deux nomprénoms et pourtant lorsque je lance

    la requête de mise à jour

    UPDATE Tmembres SET AdherAn = Yes, DateAdhésion = Date()
    WHERE EXISTS (select * from RPrep_update_adhérant, Tmembres
    WHERE RPrep_update_adhérant.Nomprénom = Tmembres.NomPrénom);

    on m'annonce que je vais mettre à jour 177 enregistrements - cad la totalité de la table Tmembres - et non pas deux ????

    où est l'erreur ?

    lundi 21 novembre 2016 16:07