Ví dụ: Tôi có hai bảng trong cơ sở dữ liệu của tôi được gọi là classA và lớpB và một bảng được gọi là classA_classB. Cái cuối cùng chỉ định nghĩa hai trường int với khóa ngoài để liên kết giữa classA và classB. Vì vậy, một classA có thể có nhiều classB và nhiều classA có thể liên kết với cùng một classB. Công cụ đơn giản, cho đến nay.Thay thế cho "chính" và "nô lệ" trong mối quan hệ thực thể?
Vấn đề là, trong trường hợp đặc biệt của tôi, tôi có một classA muốn liên kết với một lớp khác. I E. một sinh viên liên kết với bạn bè của mình, là sinh viên là tốt.
So với kỹ thuật trên, tôi có: sinh viên và student_student. student_student có hai trường: student_id, student_id. Vấn đề: Không thể có hai trường có cùng tên!
Vì vậy, tôi phải gọi cho họ như: master_student_id, slave_student_id.
Nhưng tôi không thích các cụm từ "Chính" và "Slave", bởi vì đây là những lời nhắc đến thời điểm xấu trong thời gian diễn ra của chúng tôi. Nghe có vẻ ngớ ngẩn nhưng tôi nghĩ việc giữ những thứ này không đúng, ít nhất là từ góc độ đạo đức. Tôi biết nó chỉ là một phần của khoa học máy tính hiện đại, ... nhưng ....
làm cách nào khác tôi có thể gọi cho họ?
cha mẹ và con có thể? Ngoài ra tôi không chắc chắn nếu có thực sự một thực thể "trưởng" trong khi khác là "nhân viên" ... Sinh viên và học sinh không phải là phân cấp. Nhưng sau đó, một lần nữa, hãy tưởng tượng chúng tôi có hai lớp "Giáo viên" và "Sinh viên". Đó sẽ là một hệ thống phân cấp rõ ràng. Tuy nhiên, tôi cần một giải pháp trung lập bởi vì khung của tôi đề các mối quan hệ 1: n này theo cùng một cách.
Ổ đĩa cứng kém của tôi trong chế độ nô lệ ... –
Dom và sub? :) hoặc, cho một phiên bản sạch hơn, ăn cắp từ di truyền: chiếm ưu thế và lặn – BobMcGee
@BobMcGee: chiếm ưu thế và lặn có một ý nghĩa hoàn toàn khác. Bạn có thể có lặn mà không có một gen chi phối, bạn không thể có nô lệ mà không có một bậc thầy. – Jimmy