Existe-t-il une convention pour les noms de base de données dans MySQL/MariaDB? J'ai recherché Google et ce Stack Exchange et je n'ai rien trouvé. Pas même un "Non, il n'y a pas de convention officielle". Existe-t-il une norme, ou est-ce quelque chose qui est décidé au cas par cas?
Je vous remercie.
Les noms de base de données sont entièrement à la personne qui les crée. Cela dit, il est logique d'utiliser une sorte de convention de dénomination saine.
N'utilisez pas de mots-clés réservés, ne mettez pas d'espaces dans le nom, etc. Essentiellement, suivez MySQL Documentation for identifiers , et ajoutez un peu de bon sens qui s'applique à votre environnement.
Au-delà des noms de base de données ...
Ne préfixez pas les noms de table avec le nom de la base de données.
Ne préfixez pas les noms de colonne avec le nom de la table. Une exception possible est id
-> foo_id
pour être cohérent avec ses références dans d'autres tableaux.
Pourquoi? Trop d'encombrement. Et, lorsque JOINing
, vous devez utiliser les noms de table (ou alias) sur chaque nom de colonne pour indiquer clairement de quelle table provient la colonne.
Le nom de la colonne id
doit être INT
(d'une certaine taille), UNSIGNED
, AUTO_INCREMENT
, et (généralement) le PRIMARY KEY
.
Les autres noms de colonne doivent être "significatifs" et non trompeurs.