Đây là cách tôi làm điều đó:
- Tên bảng là trường hợp thấp hơn, sử dụng dấu gạch dưới các từ riêng biệt, và là số ít (ví dụ
foo
,foo_bar
vv - Tôi thường (không phải luôn luôn) có PK tăng tự động. Tôi sử dụng quy ước sau:
tablename_id
(ví dụfoo_id
,foo_bar_id
vv). - Khi một bảng chứa một cột là khóa ngoại, tôi chỉ cần sao chép tên cột của khóa đó từ bất kỳ bảng nào mà nó xuất phát. Ví dụ: giả sử bảng
foo_bar
có FKfoo_id
(foo_id
PK là ở đâufoo
). - Khi xác định FK để thực thi tính toàn vẹn tham chiếu, tôi sử dụng như sau:
tablename_fk_columnname
(ví dụ: tiếp tục ví dụ 3, nó sẽ như vậyfoo_bar_foo_id
). Vì đây là kết hợp tên bảng / tên cột, nên nó được đảm bảo là duy nhất trong cơ sở dữ liệu. - Tôi đặt hàng các cột như thế này: PK, FK, sau đó các cột còn lại theo thứ tự bảng chữ cái
Có cách nào tốt hơn, chuẩn hơn để làm điều này?
id_tableB
=> oh không có cột có tên khác id
, tính nhất quán của id_tableB
=> id_tableB
chỉ trông gọn gàng hơn ... hoặc như OP làm điều đó: foo_id
=> foo_id
chứ không phải foo_id
=>id