sql >> Database >  >> RDS >> Mysql

Is er een naamgevingsconventie voor MySQL?

Ik zou dat eerst en vooral zeggen:wees consistent.

Ik denk dat u er bijna bent met de conventies die u in uw vraag hebt geschetst. Een paar opmerkingen echter:

Punten 1 en 2 zijn goed denk ik.

Punt 3 - helaas is dit niet altijd mogelijk. Bedenk hoe u zou omgaan met een enkele tabel foo_bar met kolommen foo_id en another_foo_id die beide verwijzen naar de foo tabel foo_id kolom. Je zou kunnen overwegen hoe je hiermee om kunt gaan. Dit is echter een beetje een hoekzaak!

Punt 4 - Vergelijkbaar met punt 3. Misschien wilt u een nummer aan het einde van de naam van de refererende sleutel toevoegen om meer dan één verwijzende kolom te voorzien.

Punt 5 - Ik zou dit vermijden. Het levert je weinig op en zal hoofdpijn opleveren als je op een later tijdstip kolommen wilt toevoegen aan of verwijderen uit een tabel.

Enkele andere punten zijn:

Naamconventies voor indexen

Misschien wilt u een naamgevingsconventie voor indexen invoeren - dit zal een grote hulp zijn voor elk metadatawerk in de database dat u mogelijk wilt uitvoeren. U kunt bijvoorbeeld gewoon een index foo_bar_idx1 . aanroepen of foo_idx1 - helemaal aan jou, maar het overwegen waard.

Enkelvoud versus meervoudige kolomnamen

Het kan een goed idee zijn om de netelige kwestie van meervoud versus enkelvoudig in uw kolomnamen en in uw tabelnaam (-namen) aan te pakken. Dit onderwerp veroorzaakt vaak grote debatten in de DB-gemeenschap. Ik zou vasthouden aan enkelvoudsvormen voor zowel tabelnamen als kolommen. Daar. Ik heb het gezegd.

Het belangrijkste hier is natuurlijk consistentie!



  1. MySQL2 Ruby gem zal 10.6 niet installeren

  2. Typen SQL Server-cursor - Alleen doorsturen dynamische cursor | SQL Server-zelfstudie / TSQL-zelfstudie

  3. Een getal naar boven afronden naar het dichtstbijzijnde gehele getal in SQL

  4. Beperking gedefinieerd UITSTELBAAR EERST ONMIDDELLIJK is nog steeds UITGESTELD?