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 Oracle Discussion :

erreur CONSTRAINT et FOREIGN KEY


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Ingénieur validation
    Inscrit en
    Février 2010
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur validation
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2010
    Messages : 58
    Par défaut erreur CONSTRAINT et FOREIGN KEY
    Bonjour je me permets de vous écrire car j’ai un erreur dans ma requête sql
    J’utilise TOAD et l’erreur renvoyé et celle-ci


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    CREATE TABLE lignes_commandes 
    ( 
     -- declaration des colones et de leurs contraintes simples 
     	commande NUMBER(8) CONSTRAINT fk_lignes_to_commandes 
    			 REFERENCES commandes(numero), 
    	article NUMBER(6) CONSTRAINT fk_lignes_to_articles 
    		REFERENCES commandes(numero), 
    	quantite NUMBER(4) NOT NULL, 
    --	declaration des constraintes qui portent sur plusieurs colonnes 
    	CONSTRAINT pk_lignes_commandes
     PRIMARY KEY (commande, article) 
    );
    L’erreur
    The following error has occurred:

    ORA-02264: name already used by an existing constraint

    Details:
    ORA-02264: name already used by an existing constraint

    Sur “pk_lignes_commandes » (table ne se créer pas)


    Enfin j’ai une autre erreur dut surement à la première

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ALTER TABLE lignes_commandes 
    	  MODIFY CONSTRAINT fk_lignes_to_articles FOREIGN
     KEY (article) 
    	  		  REFERENCES articles(numero);

    The following error has occurred:
    ORA-00933: SQL command not properly ended
    Details:
    ORA-00933: SQL command not properly ended

    Je n’aurai pas fermé ma requête SQL
    Avez-vous une idée ?
    Merci
    Cédric

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Je ne sais pas quoi vous dire de plus que le message d'erreur.
    Je veux bien vous faire la traduction :
    name already used by an existing constraint
    =>
    nom déjà utilisé par une contrainte existante.

    Les noms des contraintes doivent être unique au sein de schéma.
    Vous pouvez regarder dans la vue USER_CONSTRAINTS ce qui existe déjà.

    Pour la seconde erreur, compte tenu que la première commande n'est pas exécutée, la table n'est pas créée, vous ne pouvez donc pas la modifier.

  3. #3
    Invité
    Invité(e)
    Par défaut
    ORA-02264: name already used by an existing constraint
    Google traduction peut-être ?
    Le nom de la contrainte a déjà été utilisé dans la bd et le nom d'une contrainte est unique. Si tu changeais le nom de ta contrainte ?

    ORA-00933: SQL command not properly ended
    Syntaxe incorrecte...

  4. #4
    Membre confirmé
    Homme Profil pro
    Ingénieur validation
    Inscrit en
    Février 2010
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur validation
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2010
    Messages : 58
    Par défaut
    Merci de votre réponse
    je debute en sql
    j'ai retirer de la table des contraintes pk_lignes_commandes qui était associé à une autre table
    j'ignorai que il ne pouvait avoir que une seul contrainte sur une base total

  5. #5
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Effectivement vous débutez.
    Rien de grave, on est tous passé par là.

    Je vous conseille très vivement de lire (et comprendre) les tutoriels SQL AVANT de créer quoi que ce soit.

    http://sql.developpez.com/

    Pour votre soucis, ce n'est pas une contrainte par "base", c'est que chaque contrainte doit avoir un nom unique.
    Donc il ne faut pas supprimer vos contraintes, il suffit de leur donner un autre nom.

Discussions similaires

  1. Réponses: 2
    Dernier message: 11/07/2012, 17h52
  2. Réponses: 3
    Dernier message: 13/09/2011, 11h02
  3. Erreur Create table/foreign Key
    Par vashe9 dans le forum Requêtes
    Réponses: 8
    Dernier message: 04/09/2011, 15h29
  4. Erreur 1005 avec Foreign Key en InnoDB
    Par cd090580 dans le forum Outils
    Réponses: 5
    Dernier message: 14/07/2008, 13h41
  5. Message d'erreur 'violation of FOREIGN KEY constraint' de Interbase
    Par abdelghani_k dans le forum Bases de données
    Réponses: 3
    Dernier message: 03/06/2007, 09h11

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