2009-12-02 4 views
0

J'ai une table, et je veux juste enlever toutes les contraintes uniques sur elle.Comment supprimer toutes les clés uniques d'une table?

J'ai essayé de faire tomber la table et de la refaire, mais cela ne marchera pas. Il y a encore une contrainte.

+0

Attendez ... voulez-vous supprimer des valeurs uniques, des valeurs en double ou la contrainte unique? – cletus

+0

Il doit y avoir une très bonne raison de vouloir supprimer toutes les contraintes uniques; le faire équivaut à «vivre dans le péché». –

+0

Je veux supprimer toutes les contraintes uniques. – TIMEX

Répondre

1
ALTER TABLE myTable 
    DROP PRIMARY KEY 

voir le MySQL documentation on ALTER TABLE

La question semble être que des contraintes uniques sur la table, à savoir une clé primaire. Vous pouvez également utiliser une syntaxe similaire de ALTER TABLE pour supprimer les contraintes de clé étrangère (mais vous devez nommer le champ sous-jacent, car contrairement à la clé primaire, il peut y en avoir plusieurs par table).

Si vous êtes intéressé à éliminer le champ de la clé primaire est basée sur, ALTER TABLE à la rescousse de nouveau, ici avec ... RROP COLUMN myColumnName

Enfin, comme vous le faites tous ces changements, rappelez-vous que certaines relations clés étrangères et/ou l'existence de certains index peut exiger que vous laissiez tomber les "choses" d'une manière ordonnée.

Questions connexes