Begini cara saya melakukannya:
- Nama tabel adalah huruf kecil, menggunakan garis bawah untuk memisahkan kata, dan tunggal (mis
foo
.foo_bar
, Dll. - Saya umumnya (tidak selalu) memiliki PK kenaikan otomatis. Saya menggunakan konvensi berikut:
tablename_id
(misfoo_id
.foo_bar_id
, Dll). - Ketika tabel berisi kolom yang merupakan kunci asing, saya hanya menyalin nama kolom kunci itu dari tabel apa pun itu berasal. Sebagai contoh, katakanlah tabel
foo_bar
memiliki FKfoo_id
(di manafoo_id
adalah PKfoo
). - Ketika mendefinisikan FK untuk menegakkan integritas referensial, saya menggunakan yang berikut:
tablename_fk_columnname
(misalnya melanjutkan 3, itu akan menjadifoo_bar_foo_id
). Karena ini adalah kombinasi nama tabel / nama kolom, dijamin unik dalam database. - Saya memesan kolom-kolom seperti ini: PK, FK, lalu kolom lainnya secara alfabet
Apakah ada cara yang lebih baik dan lebih standar untuk melakukan ini?
id_tableB
=> oh tidak ada kolom dengan nama yang berbeda id
, konsistensi dari id_tableB
=> id_tableB
terlihat lebih rapi ... atau seperti yang dilakukan OP: foo_id
=> foo_id
daripada foo_id
=>id