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

Langage SQL Discussion :

URGENT CAUSE BAC DANS 1 semiane


Sujet :

Langage SQL

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 18
    Points : 8
    Points
    8
    Par défaut URGENT CAUSE BAC DANS 1 semiane
    Bonjour voila j'ai un probleme pour le bac j'ai une application sur access
    a faire tourner qui a pour but de gérer une association et j'arrive pas a venir à bout de plusieurs requetes de
    mise a jour en SQL :

    Pour comprendre le sujet voila déjà le modele relationnel:


    Ensuite voila les requêtes à éffectuer:
    • Je souhaite que lorsque le numéro d'un partenaire est présent dans la Table DONS (il a donc réalisé un don),
      celui ci doit avoir pour valeur 'O' dans le champs MembreBienfaiteur de la Table PARTENAIRE pour le numéro de partenaire lui correspondant

    • Ensuite , je recherche aussi le moyen de créer une requête de mise a jour pour que lorsqu'un partenaire achete une pub le cumul (en euros) de toutes ses pubs soit réalisé dans le champs CumulPub de la Table Partenaire

    • Et enfin je souhaiterais grace a la fonction CURDATE que l'orsque qu'un membre atteint une ancienneté de 10ans, le champs CumulMédailles lui correspondant prenne la valeur 'A10'



    Mon principal probleme vient du fait que je ne maitrise les requetes de mise a jour sur 2 Tables et par manque de temps je n'ai pas vraiment eu le temps de l'apprendre seul !

    Si quelqu'un pourrait me filer un p'tit coup de main quelqu'il soit ou même juste me trouvé un bon tutoriel sur le sujet car j'ai rien trouvé de terrible!

    merci beaucoup d'avance j'y retourne

    Jo.
    jonathan.ponthieu@orange.fr


    Si quelqu'un est dans le même cas que moi (terminale STG GSI) je suis pret à faire tourner mon boulot pour aider car j'ai fait pas de mal de choses intéressantes notament en VBA !

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2007
    Messages : 95
    Points : 104
    Points
    104
    Par défaut
    Bjr,
    il est impossible de voir votre modèle relationnel.

    @+

  3. #3
    Membre régulier
    Inscrit en
    Août 2006
    Messages
    307
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Août 2006
    Messages : 307
    Points : 114
    Points
    114
    Par défaut
    Pour le premier probleme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    UPDATE PARTENAIRE
    SET PARTENAIRE.MembreBienfaiteur = 'O'
    WHERE PARTENAIRE.NumPartenaire IN (Select DON.NumPartenaire FROM DON)
    Enfin, tout depend du modele relationnel qu'on ne voit pas...
    Pensez au tag !!!

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 18
    Points : 8
    Points
    8
    Par défaut Remerciements
    Merci beaucoup pour cette premiere aide
    j'ai posté le message cette aprem et j'ai déjà de l'aide le soir c'est vraiment sympa

    Je vais voir ça tout de suite !
    encore merci

    Jo.
    jonathan.ponthieu@orange.fr

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 18
    Points : 8
    Points
    8
    Par défaut modele relationnel
    je suis encore novice (donc sur de rien)

    Normalement le modele relationnel est en fichier joint

    Nom : Sans titre.JPG
Affichages : 57
Taille : 52,5 Ko

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 18
    Points : 8
    Points
    8
    Par défaut message d'erreur
    J'ai effectué la requête proposé et j'obtient le message suivant
    Nom : erreure.JPG
Affichages : 60
Taille : 7,8 Ko

    ??????????

  7. #7
    Membre régulier
    Inscrit en
    Août 2006
    Messages
    307
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Août 2006
    Messages : 307
    Points : 114
    Points
    114
    Par défaut


    Ben c normal car tu n'as pas les mêmes noms de champ dans ta base de donnees. J'ai pris des noms fictifs pour t'expliquer le principe.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    UPDATE PARTENAIRE 
    SET PARTENAIRE.MembreBienfaiteurO/N = 'O' 
    WHERE PARTENAIRE.NumPart IN (SELECT DON.NumPartDon FROM DON)
    UN peu de laisser-aller là...

    Pour ton 2eme probleme, il est bizarre de trouver un champ calculé (a partir d'autres tables) dans une table. C'est plutot le genre de champ que l'on calcule dans une requête.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT PARTENAIRE.NumPart, sum(montantPub)
    FROM PARTENAIRE, PUB
    WHERE PARTENAIRE.NumPart = PUB.NumPart
    GROUP BY PARTENAIRE.NumPart;
    Ce sont des requêtes toutes simple donc un peu de recherche n'aurait pas fait de mal...
    Pensez au tag !!!

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 18
    Points : 8
    Points
    8
    Par défaut Lol
    Désolé j'avais vraiment pas fait gaffe !
    En tout cas ca marche merci

    Par contre pour la deuxieme requete c'est aussi une requête de mise a jour dont j'ai besoin j'ai donc utilisé la 1ère requête comme modèle :

    UPDATE PARTENAIRE SET PARTENAIRE.cumulPub = sum(PUBLICITE.MontantPub)
    WHERE PARTENAIRE.NumPart IN (SELECT PUBLICITE.NumPart FROM PUBLICITE);

    et j'obtien un message d'erreur
    Nom : Sans titre.JPG
Affichages : 55
Taille : 15,6 Ko

    Désolé si mes questions sembles débilles mais je ne maitrise pas du tout le SQL sur 2 tables et merci encore une fois a developpez.com et ses utilisateurs car les gens sont sympas et les réponses sont rapides et claires

  9. #9
    Membre éprouvé Avatar de Mathusalem
    Profil pro
    IT moa
    Inscrit en
    Décembre 2003
    Messages
    1 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : IT moa

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 008
    Points : 1 067
    Points
    1 067
    Par défaut
    tu ne peux pas mettre de group by dans une requête update -> pas le droit non plus aux fonctions d'agrégations (sum, avg, ...)

    d'autre part, tu peux utiliser le bouton "#" pour mettre ton code en couleur, pas besoin de le faire à la main ;-)

  10. #10
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 18
    Points : 8
    Points
    8
    Par défaut Encore Raté !
    je viens de réessayer ce code la mais ca marche pas non plus j'deviens débille

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    UPDATE PARTENAIRE SET PARTENAIRE.cumulPub = CummulPub_en_€uros
    WHERE PARTENAIRE.NumPart IN 
    (SELECT PUBLICITE.NumPart, Sum(PUBLICITE.MontantPub) AS CummulPub_en_€uros
    FROM PUBLICITE
    GROUP BY PUBLICITE.NumPart;);
    Nom : Sans titre.JPG
Affichages : 55
Taille : 10,7 Ko

Discussions similaires

  1. aide urgent cause piratage et chantage
    Par skuoil dans le forum Sécurité
    Réponses: 7
    Dernier message: 10/10/2011, 17h09
  2. [CGI] aide urgente sur script dans cgi
    Par angelino dans le forum Web
    Réponses: 1
    Dernier message: 12/04/2007, 09h16
  3. (urgent) Erreur dans mon select à cause du NOT IN
    Par MoTUmBo dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 29/11/2005, 20h28

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