Partage
  • Partager sur Facebook
  • Partager sur Twitter

Creation base de données

Sujet résolu
    12 septembre 2011 à 6:06:01

    Bonjour je sais que ma question est peut être basique pour certains mais je me lance (en priant pour que le modo ne passe pas par la ).
    Je tente actuellement de faire un programme de gestion des frais avec une base postgresql et Qt cela ce passe relativement bien sauf au niveau de la definition des bases.
    Je voudrais qu'une facture corresponde à un ensemble de plusieurs achats (avec produit, prix ht, prix ttc etc comme dans la vrai vie quoi ) mais j'ai du mal à traduire cela en base de données.
    Dois je créer une table facture et une table achats et si oui comment faire pour que les achats soit relié à la même facture.


    HELP je m'y perds la?????
    • Partager sur Facebook
    • Partager sur Twitter
      12 septembre 2011 à 7:31:06

      Ce que tu veux faire, si j'ai bien compris, c'est établire des relations entre deux tables. Pour celà, il faut utiliser les clefs étrangères. Comme tu utilises PostGreSQL, tu pourrais insérer un champ "achats" dans ta table facture et d'y mettre un tableau d'int. Par contre je ne sais pas si c'est possible de combiner clé étrangère et tableau.

      Du coup ce que tu peux faire c'est une troisième table "facture_items" (ça me semble de toute façon la meilleure option). Et dans cette table tu as un champ "facture_id" lié au champ "id" de ta table "factures" et un champ "achat_id" lié au champ "id" de ta table "achats".

      Après pour récupérer ta facture en entier. Tu commences par récupérer les infos que tu as dans ta table "factures" (dont l'id). Tu listes toutes les entrées que tu as dans "facture_items" ayant un "facture_id" égal à l'id de ta facture. Puis tu vas chercher dans ta table "achats" les entrées qui ont les id que tu as récupérés avec "achat_id". Enfin, il vaut mieux utiliser une jointure pour ça mais je t'explique juste le principe.

      Citation : seikeneg

      (en priant pour que le modo ne passe pas par la ).



      Compte là dessus et boit de l'eau :p C'est pas dans le forum "Base de données" que tu passeras inaperçu.

      • Partager sur Facebook
      • Partager sur Twitter
      Envie de mettre les mains dans le cambouis ? Passez à Funtoo GNU/Linux. DO IT!
        12 septembre 2011 à 19:11:29

        Citation : seikeneg

        en priant pour que le modo ne passe pas par la


        Ne t'inquiète pas, tu peux poser les questions que tu veux ici. Dans le pire des cas, on va te rediriger vers un moteur de recherche ou un tutoriel qui répondra à ta question.

        Sinon, effectivement, le mieux est une table de liens entre les factures et les items achetés. Je ne crois pas qu'il soit pertinent ici d'utiliser un tableau d'entier.
        • Partager sur Facebook
        • Partager sur Twitter

        Creation base de données

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown