Mysql
 sql >> Base de données >  >> RDS >> Mysql

Un champ de colonne "unique" implique-t-il un index avec MySQL, et si oui, pourquoi ?

Oui. Ce n'est pas nécessairement "automatique", c'est implicite. UNIQUE est type d'index, donc bien sûr cette colonne est indexée.

Parce qu'il serait idiot pour MySQL de faire une analyse complète de la table sur chaque INSERT /UPDATE pour maintenir la contrainte unique.

Modifier :

Pourquoi un programmeur voudrait-il appliquer manuellement l'intégrité des données de base en dehors de la couche de stockage des données ? Je comprends où vous voulez en venir, mais le fait est qu'un index ne peut pas faire de mal quoi que ce soit (cela prend juste un peu plus d'espace) - il n'y a donc pas vraiment de décision à prendre.