Saya akan mengatakan yang pertama dan terpenting:konsistenlah.
Saya rasa Anda hampir sampai di sana dengan konvensi yang telah Anda uraikan dalam pertanyaan Anda. Beberapa komentar:
Poin 1 dan 2 menurut saya bagus.
Poin 3 - sayangnya ini tidak selalu memungkinkan. Pikirkan tentang bagaimana Anda akan mengatasi satu tabel foo_bar
yang memiliki kolom foo_id
dan another_foo_id
keduanya merujuk pada foo
tabel foo_id
kolom. Anda mungkin ingin mempertimbangkan bagaimana menangani hal ini. Ini sedikit kasus sudut!
Butir 4 - Mirip dengan Butir 3. Anda mungkin ingin memasukkan nomor di akhir nama kunci asing untuk memenuhi lebih dari satu kolom referensi.
Poin 5 - Saya akan menghindari ini. Ini memberi Anda sedikit dan akan menjadi sakit kepala ketika Anda ingin menambah atau menghapus kolom dari tabel di kemudian hari.
Beberapa poin lainnya adalah:
Konvensi Penamaan Indeks
Anda mungkin ingin memperkenalkan konvensi penamaan untuk indeks - ini akan sangat membantu untuk pekerjaan metadata database apa pun yang mungkin ingin Anda lakukan. Misalnya Anda mungkin hanya ingin memanggil indeks foo_bar_idx1
atau foo_idx1
- terserah Anda, tetapi patut dipertimbangkan.
Nama Kolom Tunggal vs Jamak
Mungkin ide yang baik untuk mengatasi masalah pelik dari jamak vs tunggal dalam nama kolom Anda serta nama tabel Anda. Subjek ini sering menyebabkan debat besar dalam komunitas DB. Saya akan tetap menggunakan bentuk tunggal untuk nama tabel dan kolom. Di sana. Aku sudah mengatakannya.
Hal utama di sini tentu saja konsistensi!