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 :

Ajouter une contrainte UNIQUE à une clé


Sujet :

Requêtes MySQL

  1. #1
    Membre averti Avatar de Linio
    Inscrit en
    Octobre 2005
    Messages
    431
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 431
    Points : 332
    Points
    332
    Par défaut Ajouter une contrainte UNIQUE à une clé
    Bon, je commence à désespérer de trouver la bonne syntaxe ou la bonne façon.

    J'ai une table toute bête, et j'essaye de rajouter une contrainte d'unicité à une de mes clés pour pouvoir utiliser des requêtes de type 'ON DUPLICATE KEYS ...'

    J'ai testé ces diverses requêtes aucune ne marche:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    ALTER TABLE table ALTER COLUMN colonne SET UNIQUE;
    Erreur de syntaxe
    ALTER TABLE table1 MODIFY customer_id UNIQUE varchar(64); 
    Erreur de syntaxe
    ALTER TABLE table1 ADD CONSTRAINT(UNIQUE KEY(customer_id));
    ERROR 1064 (42000): Erreur de syntaxe 
    ALTER TABLE table1 ADD CONSTRAINT unicite UNIQUE(customer_id);
    ERROR 1062 (23000): Duplicata du champ '' pour la clef 2
    CREATE UNIQUE INDEX unicite on table1(customer_id);
    ERROR 1062 (23000): Duplicata du champ '' pour la clef 2
    J'ai essayé de zieuter la doc mais j'ai l'impression que ma version de MySQL ne veut pas tout faire:
    4.1.9-max

    une idée??

  2. #2
    Expert éminent
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 911
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 911
    Points : 6 032
    Points
    6 032
    Par défaut
    Quelle est la définition de cette table ?

  3. #3
    Membre émérite
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Points : 2 399
    Points
    2 399
    Par défaut
    C'est un clé primaire qu'il fau mettre sur un ou plusieurs champs

  4. #4
    Membre averti Avatar de Linio
    Inscrit en
    Octobre 2005
    Messages
    431
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 431
    Points : 332
    Points
    332
    Par défaut
    C'est une grosse table de 29 champs je peux pas la mettre en entier ici, mais en gros c'est une simple table avec un id en clé primaire et 28 champs divers et variés, et le champ customer_id que je veux modifier.

    id : champ 1 primaire
    project_id: champ 2 foreign key
    ...

    Je ne peux pas passer le customer_id en clé primaire dans la mesure où je ne peux pas me permettre de changer 'à ce point là' la table.

    Il y a des clés uniques sur d'autres tables donc ce doit être possibles.

    Edit: je viens de comprendre, à la création de la contrainte, il vérifie au préalable que celle ci ne soit pas violée par les enregistrements existants...

    Désolé j'ai fait mon boulet là, mais merci de m'avoir fait vérifier la structure de la table, ça m'a mis sur le chemin.

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 25/03/2011, 10h52
  2. [XL-2002] Macro de comparaison d'une cellule d'une feuille avec une cellule d'une autre feuille.
    Par steelydan dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 08/09/2010, 12h59
  3. Réponses: 4
    Dernier message: 15/10/2009, 13h33
  4. [XL-2007] Afficher une checkbox dans une feuille si une checkbox d'une autre feuille est cochée
    Par JessieCoutas dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/08/2009, 13h35
  5. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48

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