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

Requêtes MySQL Discussion :

Création d'un index multicolonnes


Sujet :

Requêtes MySQL

  1. #1
    Membre du Club
    Femme Profil pro
    informaticienne
    Inscrit en
    Juillet 2012
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : informaticienne
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2012
    Messages : 81
    Points : 47
    Points
    47
    Par défaut Création d'un index multicolonnes
    Bonjour à tous .je rencontre quelques difficultés pour créer un index unique sur 2 colonnes.Bon voici à peu près le schéma de ma base elevage qui contient pour l'instant 2 tables Animal et Espece.
    Espece dont le schéma est le suivant:
    Espece (id,nom_courant, nom_latin, description)
    La table Animal dont le schéma est le suivant:
    Animal (id,espece_id,nom,sexe,date_naissance,commentaires)


    j'ai rajouté espece_id comme clé étrangère dans Animal et mis une contrainte dessus avec la commande suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ALTER TABLE Animal
    ADD CONSTRAINT fk_espece_id FOREIGN KEY (espece_id) REFERENCES
    Espece(id);
    Ensuite j'ai créé un index UNIQUE sur le couple(nom,espece_id) avec la commande
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    CREATE UNIQUE INDEX ind_uni_nom_espece_id ON Animal (nom,
    espece_id);
    Mais cela a provoqué une erreur :
    ERROR 1062 <23000> Duplicate Entry 'Anya-1' for key 'ind_uni_nom_espece_id'

    Je comprends pas très bien ce que cela signifie ni comment le résoudre . Merci d'avance pour votre aide.

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Points : 5 345
    Points
    5 345
    Par défaut
    bonjour,

    cette erreur indique que vous avez des doublons.

    Pour les identifier utilisez ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    select espece_id, nom
    from animal
    group by espece_id, nom
    having count(*) > 1

  3. #3
    Membre du Club
    Femme Profil pro
    informaticienne
    Inscrit en
    Juillet 2012
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : informaticienne
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2012
    Messages : 81
    Points : 47
    Points
    47
    Par défaut création index
    merci beaucoup en effet, j'ai plusieurs doublons dans ma table. merci beaucoup

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

Discussions similaires

  1. [FTP] Création d'un index via un formulaire
    Par TraNXenE200 dans le forum Langage
    Réponses: 2
    Dernier message: 30/03/2006, 15h54
  2. [ASE] [12.0] Date de création d'un index en 12.0.0.8
    Par Lord Raptor dans le forum Sybase
    Réponses: 3
    Dernier message: 26/01/2006, 11h47
  3. Réponses: 3
    Dernier message: 18/11/2005, 13h37
  4. Réponses: 7
    Dernier message: 22/02/2005, 13h07
  5. [xsl][XML] création d'un index
    Par Boosters dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 28/11/2002, 08h29

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