Ecco come lo faccio:
- I nomi delle tabelle sono minuscole, usi sottolineatura per separare le parole, e sono singolari (ad esempio
foo,foo_bare così via - In genere (non sempre) ho un PK di incremento automatico. Uso la seguente convenzione:
tablename_id(ad esfoo_id.foo_bar_id, Ecc.). - Quando una tabella contiene una colonna che è una chiave esterna, copio semplicemente il nome della colonna di quella chiave da qualunque tabella provenga. Ad esempio, supponiamo che la tabella
foo_barabbia l'FKfoo_id(dov'èfoo_idil PK difoo). - Quando definisco gli FK per applicare l'integrità referenziale, utilizzo quanto segue:
tablename_fk_columnname(ad esempio, per promuovere l'esempio 3, sarebbefoo_bar_foo_id). Poiché si tratta di una combinazione di nome tabella / nome colonna, è garantito che sia univoco all'interno del database. - Ordino le colonne in questo modo: PK, FK, quindi il resto delle colonne in ordine alfabetico
Esiste un modo migliore e più standard per farlo?
id_tableB=> oh nessuna colonna con un nome diverso id , la consistenza di id_tableB=> id_tableBsembra solo più ordinata ... o come OP fa: foo_id=> foo_idpiuttosto che foo_id=>id