Anda tidak perlu menamai mereka hal yang berbeda. Anda dapat memiliki kolom FAM_ID di FAMILY, kolom FAM_ID di DOCUMENTS, dan kolom FAM_ID di CONTACT.
Dalam hal ini, menamai mereka dengan hal yang sama memperjelas bahwa mereka merujuk pada hal yang sama. Tapi, Anda juga bisa membuat konvensi penamaan lain jika Anda mau.
Misalnya, saya menggunakan sesuatu di sepanjang baris family_ID
di tabel keluarga, dan contact_familyID
, document_familyID
saat merujuknya dari tabel kontak dan dokumen.
Satu-satunya downside untuk menamai mereka sama, sejauh yang saya bisa lihat, adalah bahwa ketika melakukan penggabungan Anda tidak bisa hanya merujuk mereka dengan nama kolom, Anda harus alias atau merujuk mereka dengan tablename.columnname.
Sunting:Saya pikir saya telah menemukan apa yang Anda maksud dengan tidak dapat memiliki nama yang sama. Ini adalah kasus ketika Anda menambahkan hubungan kunci asing dalam satu tabel, seperti yang dijelaskan di sini:http://bugs.mysql.com/bug.php?id=46363