2012-02-07 3 views
31

Je dois retirer une clé unique de ma table mysql. Comment peut-on supprimer cela en utilisant la requête mysql.Comment supprimer une clé unique de la table mysql

J'ai essayé, mais il ne fonctionne pas

alter table tbl_quiz_attempt_master drop unique key; 

S'il vous plaît aidez-moi

Merci

+2

poste double à double http://stackoverflow.com/questions/1564924/how-to-drop-unique-in-mysql – user3404455

+1

possible de [Comment déposer uniques en MySQL?] (https://stackoverflow.com/questions/1564924/how-to-drop-unique-in-mysql) –

Répondre

60

Toutes les touches sont nommées, vous devez utiliser quelque chose comme ça -

ALTER TABLE tbl_quiz_attempt_master 
    DROP INDEX index_name; 

Pour laisser tomber l'utilisation de clé primaire celui -

ALTER TABLE tbl_quiz_attempt_master 
    DROP INDEX `PRIMARY`; 

ALTER TABLE Syntax.

9
ALTER TABLE mytable DROP INDEX key_Name; 
5

Pour ceux qui ne savent pas comment obtenir index_name qui mentionné dans Devart « s réponse, ou qui key_name mentionné dans Uday Sawant » s réponse, vous pouvez l'obtenir comme ceci:

SHOW INDEX FROM table_name; 

Cela montrera tous les index pour la table donnée, alors vous pouvez choisir le nom de l'index ou la clef unique que vous voulez enlever.

24

Vous devez d'abord connaître le nom exact de l'INDEX (clé unique dans ce cas) pour le supprimer ou le mettre à jour.
Les noms INDEX sont généralement les mêmes que les noms de colonne. Dans le cas où plus d'un INDEX est appliqué sur une colonne, MySQL suffixera automatiquement la numérotation aux noms de colonnes pour créer des noms INDEX uniques.

Par exemple, si 2 indices sont appliqués sur une colonne nommée customer_id

  1. Le premier indice sera nommé customer_id lui-même. Le deuxième index sera les noms customer_id_2 et ainsi de suite.

Pour connaître le nom de l'index que vous souhaitez supprimer ou mettre à jour

SHOW INDEX FROM <table_name> 

comme suggéré par @Amr

Pour supprimer un index

ALTER TABLE <table_name> DROP INDEX <index_name>; 
-1

Pour ajouter une expérience unique Utilisation de la clé:

alter table your_table add UNIQUE(target_column_name); 

Pour supprimer une utilisation clé unique:

alter table your_table drop INDEX target_column_name; 
Questions connexes