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

SQL Procédural MySQL Discussion :

enregistrement, probleme avec les relations


Sujet :

SQL Procédural MySQL

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 142
    Points : 91
    Points
    91
    Par défaut enregistrement, probleme avec les relations
    Bonjour,

    Voici le problème :

    J'ai une table nommé t_ligne avec les attributs: id_ligne,id_module,id_event,heure,date.

    J'ai une table nommé t_module avec les attributs: id_module,module.

    J'ai une table nommé t_event avec les attributs: id_event,event.

    J'ai une table nommé t_correspondre avec les attributs: id_module,id_event.

    Voila mes questions:
    1°Lors d'un enregistrement, je souhaite que dans la table t_ligne figure l'id du module et non le module, l'id de l'event et non .... , comment faire ? utiliser une variable et y stocker le numero ? si oui, comment faire ?

    2° La table t_correspondre, servira, dans le cas d'une recherche, à prédéfinir les choix suivants le module ou l'event choisi ( Il peut y avoir un event pour plusieurs module, un module pour plusieurs events, mais tous les modules ne peuvent pas avoir tous les évents et bien entendu, vice versa et inversement lol ).
    Comment faire pour afficher les attributs 'module' et 'event' à l'utilisateur et non l'attribut id_event ... ?
    si vous avez pas compris, je vous enverrai la réalisation conceptuel, mais j'ai pas de FTP

    S'il vous plait, aidez moi

    Merci mille fois !

  2. #2
    Membre émérite Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Points : 2 973
    Points
    2 973
    Par défaut Re: enregistrement, probleme avec les relations
    Citation Envoyé par Nelmo
    1°Lors d'un enregistrement, je souhaite que dans la table t_ligne figure l'id du module et non le module, l'id de l'event et non .... , comment faire ? utiliser une variable et y stocker le numero ? si oui, comment faire ?
    Il suffit juste de stocker l'id du module dans la colonne id_module et pareil pour event... je ne vois pas où est le souci ?

    Citation Envoyé par Nelmo
    Comment faire pour afficher les attributs 'module' et 'event' à l'utilisateur et non l'attribut id_event ... ?
    Si j'ai bien compris la question, il faut faire une jointure entre la table t_ligne et les tables t_module et t_event. Voir ce tutoriel.

    Si tu précisais un peu plus le contexte de ton problème, je pense qu'on comprendrait mieux...
    Pensez au bouton

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 142
    Points : 91
    Points
    91
    Par défaut
    Je te remercie pour ta réponse !

    Je vais approfondir un peu plus !

    En fait, je recoit des enregistrements dans un fichier, suivant le fichier demandé, je lance la fonction c++ qui me permet de traiter toutes les lignes enregistré dans le fichier.
    Une fois le tri réalisé et les données mis dans des variables, je voudrai lrenseigner ma table t_ligne avec celle-ci.
    Le problème réside dans le fait que je ne vois pas comment comparer d'une part le nom du module stocké dans la variable avec l'attribut module de la table t_module et d'autre part, je ne sais pas comment renseigné la table t_ligne avec l'id correspondant au module comparé !

    Je veux que chaque enregistrement soit stockés dans la table t_ligne.

    Pour le moment, je pense que ceci est un bon début:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT module,id_module FROM t_module WHERE module LIKE 'variable';
    le code me permet de séléctionner dans la table t_module le module et l'id correspondant, mais comment faire pour renseigner cette id dans la table t_ligne ? sachant bien sur, que je doit réaliser la meme opération pour la table event et que je doit aussi enregistrer le contenu des variables renseignants l'attribut date et heure ( tout ceci en meme temps koi ) !

    Je t'avoue que c'est pas simple à expliquer mais bon, je vais y arriver, mon bts est en jeu et j'ai pas eu de cours de BDD alors bon ... lol

  4. #4
    Membre émérite Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Points : 2 973
    Points
    2 973
    Par défaut
    Citation Envoyé par Nelmo
    le code me permet de séléctionner dans la table t_module le module et l'id correspondant, mais comment faire pour renseigner cette id dans la table t_ligne ? sachant bien sur, que je doit réaliser la meme opération pour la table event et que je doit aussi enregistrer le contenu des variables renseignants l'attribut date et heure ( tout ceci en meme temps koi ) !
    A partir de MySQL 4.1, tu peux faire ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    INSERT INTO t_ligne (id_ligne, id_module, id_event, heure, date)
    VALUES (xxx, (SELECT id_module FROM t_module WHERE module='yyyy'),
    (SELECT id_event FROMt_event WHERE event='zzzz'), wwww, kkkk)
    Avec une version antérieure il va falloir récupérer les id avec un SELECT puis faire le INSERT.

    Citation Envoyé par Nelmo
    j'ai pas eu de cours de BDD alors bon ... lol
    Au pire tu as une très bonne excuse alors...
    Pensez au bouton

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 142
    Points : 91
    Points
    91
    Par défaut
    Je te remercie, je vai essayer ce code dans l'après midi, j'utilise la version 5 de mysql donc c'est bonheur !

    Je t'informe juste apres l'essai !

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 142
    Points : 91
    Points
    91
    Par défaut
    Et bien que te dire à part MERCI

    Le code n'a pas marché du premier coup, je ne sait pas pourquoi, il voulait absolument du caractère " ' " pour encadrer l'heure et la date !

    Vraiment, maximilian, je te remercie et longue à ce fabuleux forum !

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 142
    Points : 91
    Points
    91
    Par défaut
    Re bonjour,

    Voila, je reviens à la charge !

    je voudrais que :
    • si l'event testé n'est pas encore dans la table event, je voudrais qu'il l'enregistre et qu'il remonte l'id ....
      Renseigné la table t_correspondre pour faire correspondre un module à un event !


    Je ne voit pas trop comment faire mon if not exist et comment inserer un second insert pour la table correspondre ...

    Si vous pouviez m'aider, sa m'arrangerai !

    Merci

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

Discussions similaires

  1. probleme avec les enregistrements (record)
    Par essof_salhi dans le forum Débuter
    Réponses: 2
    Dernier message: 19/05/2014, 13h17
  2. Help!! Probleme avec les dates sur SQL SERVER
    Par Nadaa dans le forum MS SQL Server
    Réponses: 16
    Dernier message: 03/08/2006, 16h55
  3. PROBLEME AVEC LES REQUETES IS NULL / NOT EXISTS
    Par sylvaine dans le forum Langage SQL
    Réponses: 5
    Dernier message: 04/06/2004, 13h26
  4. Problem avec les *.AVI sur les panels
    Par NaDiA_SoFt dans le forum C++Builder
    Réponses: 3
    Dernier message: 31/08/2003, 22h50
  5. probleme avec les processus
    Par saidi dans le forum Autres éditeurs
    Réponses: 1
    Dernier message: 05/02/2003, 00h18

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