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

Bases de données Delphi Discussion :

plusieurs commandes même client


Sujet :

Bases de données Delphi

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

    Informations forums :
    Inscription : Janvier 2006
    Messages : 479
    Points : 102
    Points
    102
    Par défaut plusieurs commandes même client
    Bonjour

    Comment faire sur une table liée pour créer plusieurs commandes pour un même client sur un N° de commande différent bien entendu.

    ex:
    fournisseur1 commande1
    fournisseur1 commande2
    etc..........

    je rappelle que ma table commande est liée par nclient

    dois-je chaque fois créer une autre table?

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 147
    Points : 184
    Points
    184
    Par défaut
    Bonjour
    Bien que ta question est plutot un problème de conception voici le schéma générale. Tu rajoutes bien en entendu tous les champs que tu veux
    Table Client
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    CREATE TABLE T_CLIENT 
    (ID_CLIENT INTEGER NOT NULL);
     
     
    ALTER TABLE T_CLIENT ADD CONSTRAINT PK_T_CLIENT PRIMARY KEY (ID_CLIENT);


    Table Commandes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    CREATE TABLE T_COMMANDE 
    (ID_COMMANDE INTEGER NOT NULL,
        ID_CLIENT INTEGER);
     
    ALTER TABLE T_COMMANDE ADD CONSTRAINT PK_T_COMMANDE PRIMARY KEY (ID_COMMANDE);
     
    ALTER TABLE T_COMMANDE ADD CONSTRAINT FK_T_COMMANDE FOREIGN KEY (ID_CLIENT) REFERENCES T_CLIENT (ID_CLIENT);
     
    CREATE INDEX FK_T_COMMANDE ON T_COMMANDE (ID_CLIENT);
    Au royaume des aveugles, les borgnes sont rois.

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

    Informations forums :
    Inscription : Janvier 2006
    Messages : 479
    Points : 102
    Points
    102
    Par défaut
    Merci

    Mais si je comprend bien je dois creer une table pour chaque nouvelle commande?

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 147
    Points : 184
    Points
    184
    Par défaut
    Non
    A chaque commande il va y avoir un enregistrement ou row en anglais ou tupples(terme en rapport avec la thèorie des ensembles) qui s'insére dans la table des commandes avec insertion d'un nouveau ID_COMMANDE par un générateur. donc tu dois créer un génrateur et un trigger pour incrémenter ce champ. C'est aussi valable pour la table des clients.
    Et pour insérer ID_CLIENT dans T_COMMANDE tu dois passer par une procedure stockée.....
    Mirmillon
    Au royaume des aveugles, les borgnes sont rois.

  5. #5
    Membre confirmé
    Inscrit en
    Janvier 2005
    Messages
    529
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 529
    Points : 464
    Points
    464
    Par défaut
    salut,
    je ne suis pas un expert, mais j'aime faire de la façon la plus simple, la table ligne de commande entre client et commande.qui va avoir comme clé primaire(codecli,codeproduit,qtev,..), quand vous créez cette table, vous allez choisir table de référence ensuite choisir la table client ensuite le champs ccli de cette dernière.
    mêmechose pour code produit c'est la tableproduit.Bonne chance.
    Merci.
    Deux, n'apprendront pas; le timide et l'arrogant

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

    Informations forums :
    Inscription : Janvier 2006
    Messages : 479
    Points : 102
    Points
    102
    Par défaut
    Merci à tous

    en ce qui concerne la réponse de hocine je la retiens du fait comme il dit
    c'est le plus simple mais j'ai essayé dans le module de donnée ça marche mais dans le programme delphi NIET. Pourquoi?

    Je précise que je vais reformuler ma question dans le forum.

Discussions similaires

  1. Réponses: 3
    Dernier message: 06/01/2012, 11h32
  2. [Shell] plusieurs commandes sed simultanées dans un même script
    Par hakkio dans le forum Shell et commandes GNU
    Réponses: 4
    Dernier message: 05/12/2011, 14h40
  3. Réponses: 4
    Dernier message: 20/04/2011, 11h20
  4. Réponses: 10
    Dernier message: 03/04/2008, 15h58
  5. Réponses: 6
    Dernier message: 22/11/2006, 11h24

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