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

Oracle Discussion :

Inserer une clé etrangere dans une table


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 152
    Par défaut Inserer une clé etrangere dans une table
    Bonjour à tous s'il vous plait j'aimerais crééer cette BD sous Oracle 10g
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Fourn(Fournisseur, Adr, Tel)
    Piece(IdPiece, NomdePiece, Codebarre, PrixUnit, Fournisseur)
    Compatib(IdPiece, NomdePiece, MarqueVoiture, TypeVoiture)
    Facture(NoFacture, Codebarre, Client, DateFacture, Qte, PrixFacture)
    J'ai pu creer toutes les tables; mais j'ai oublié de preciser dans la table PIECE que codebarre est une clé etangere.
    quand je tape la requete
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ALTER TABLE piece
    ADD(CONSTRAINT codebarre_fk foreign key(codebarre) 
    reference Facture (codebarre) );
    Merci de m'aider

    j'ai l'erreur suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    reference Facture (codebarre)
                              *
    Pas de corresponce de clé primaire ou unique pour cette liste de colennes

  2. #2
    Membre expérimenté Avatar de Laurent_du_78
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    138
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Juin 2007
    Messages : 138
    Par défaut
    Bonjour,
    il faut créer un clé primaire sur Facture (codebarre)
    Il serait également judicieux de créer un index sur piece (codebarre)

  3. #3
    Expert confirmé
    Avatar de pachot
    Homme Profil pro
    Developer Advocate YugabyteDB
    Inscrit en
    Novembre 2007
    Messages
    1 822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Developer Advocate YugabyteDB
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 822
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    Tu ne peux pas: la clé de facture c'est NoFacture + Codebarre
    Codebarre tout seul n'est pas unique dans Facture.

    Peut-être tu veux dire l'inverse:
    Codebarre est unique dans Piece (c'est même probablement une clé candidate même si tu as choisi une clé générée). Donc Codebarre de Facture référence Codebarre de Piece

    Cordialement,
    Franck.

  4. #4
    Membre expérimenté Avatar de Laurent_du_78
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    138
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Juin 2007
    Messages : 138
    Par défaut
    Citation Envoyé par pachot Voir le message
    Bonjour,
    Tu ne peux pas: la clé de facture c'est NoFacture + Codebarre
    Codebarre tout seul n'est pas unique dans Facture.

    Peut-être tu veux dire l'inverse:
    Codebarre est unique dans Piece (c'est même probablement une clé candidate même si tu as choisi une clé générée). Donc Codebarre de Facture référence Codebarre de Piece

    Cordialement,
    Franck.
    Exact Franck,
    j'ai même pas regardé le modèle de données

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 152
    Par défaut instruction
    ça donnerait comme instructrion dans ce cas

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 152
    Par défaut instruction
    ça donnerait quoi comme instructrion dans ce cas

  7. #7
    Membre expérimenté Avatar de Laurent_du_78
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    138
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Juin 2007
    Messages : 138
    Par défaut
    Citation Envoyé par patricx Voir le message
    ça donnerait quoi comme instructrion dans ce cas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    ALTER TABLE Piece ADD (
      CONSTRAINT PK_Piece PRIMARY KEY (Codebarre)
        USING INDEX 
        TABLESPACE xxxxxx);
     
    ALTER TABLE Facture
    ADD (CONSTRAINT codebarre_fk FOREIGN KEY(codebarre) 
    reference Piece (codebarre) );

Discussions similaires

  1. Réponses: 4
    Dernier message: 08/07/2014, 14h17
  2. Changer un caractère dans une chaîne contenue dans une phrase
    Par cirtey dans le forum Algorithmes et structures de données
    Réponses: 9
    Dernier message: 07/03/2007, 16h16
  3. Réponses: 4
    Dernier message: 16/05/2006, 23h15
  4. Réponses: 11
    Dernier message: 06/12/2005, 08h23

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