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

Clés SQL, MUL vs PRI vs UNI

DESCRIBE <table>; 

Il s'agit en fait d'un raccourci pour :

SHOW COLUMNS FROM <table>;

Dans tous les cas, il existe trois valeurs possibles pour l'attribut "Clé" :

  1. PRI
  2. UNI
  3. MUL

La signification de PRI et UNI sont assez clairs :

  • PRI => clé primaire
  • UNI => clé unique

La troisième possibilité, MUL , (sur lequel vous avez posé des questions) est essentiellement un index qui n'est ni une clé primaire ni une clé unique. Le nom vient de "multiple" car plusieurs occurrences de la même valeur sont autorisées. Directement depuis la Documentation MySQL :

Si Key est MUL , la colonne est la première colonne d'un index non unique dans lequel plusieurs occurrences d'une valeur donnée sont autorisées dans la colonne.

Il y a aussi une dernière mise en garde :

Si plusieurs valeurs de Clé s'appliquent à une colonne donnée d'une table, Clé affiche celle qui a la priorité la plus élevée, dans l'ordre PRI , UNI , MUL .

De manière générale, la documentation MySQL est assez bonne. En cas de doute, consultez-le !