J'ai une table qui est en production. Je me rends compte que certaines des colonnes devraient être uniques. Est-il sûr d'aller dans phpMyAdmin et de modifier ces colonnes pour le rendre unique?
ALTER TABLE `foo` ADD UNIQUE ( `bar` )
Une dernière chose, si vous avez une DB de production, vous devez également avoir une DB de développement sur laquelle vous pouvez tester sans crainte, non?
Suivez les étapes ci-dessous pour appliquer une valeur de colonne unique à partir du panneau phpmyadmin:
Accédez à la structure du tableau. Cliquez sur le mot-clé unique comme ci-dessous -
Cliquez sur le ok de la boîte de confirmation -
Une contrainte de valeur unique pour la colonne s'appliquera. Ou vous pouvez exécuter une requête mysql:
ALTER TABLE user ADD UNIQUE(email);
J'ai eu ce problème et mes valeurs n'étaient pas uniques. Je n'ai pas non plus trouvé de moyen simple de modifier ce problème dans PHPMyAdmin. Voici comment je l'ai résolu:
J'ai cliqué dans le tableau dont j'avais besoin pour mettre à jour
J'ai exporté la table, en la changeant pour une exportation CSV, puis je l'ai modifiée manuellement pour mettre à jour les valeurs non uniques.
J'espère que cela fera gagner du temps à quelqu'un dans le futur.
Ce ne sera un problème que si les valeurs préexistantes sur la table ne sont pas uniques, sinon je ne pense pas qu'il y aura de problème.
S'il y a déjà des valeurs en double dans ces colonnes, cela générera une erreur. S'il n'y a pas de valeurs en double dans ces colonnes, tout ira bien.