tôi có thể nhìn thấy nơi các "chủ sở hữu" đến, nhưng một hiệp hội là một đường ống, và bạn có thể nhìn xuống hai đầu, để whats Sa y mà thực thể "sở hữu" đường ống.
Một cách khác để xem xét điều này là trong mối quan hệ Một đến nhiều, thực tế có 2 mối quan hệ đang diễn ra.
Mối quan hệ 1: Cha mẹ với nhiều trẻ em.
Mối quan hệ 2: Mỗi trẻ em đối với cha mẹ
Vì vậy, NH sẽ cố gắng chạy sql để lưu trữ từng thứ này trong DB. Nhưng không cần phải vì khi bạn đặt Khóa ngoại, ví dụ: trong Mối quan hệ 2 khi một đứa trẻ được lưu trữ, sau đó nó sẽ tự động cố định mối quan hệ của cha mẹ với đứa trẻ cũng bởi vì Mối quan hệ 1 là "nghịch đảo" của mối quan hệ 2.
Vì vậy, nghịch đảo có nghĩa là, cái gì đó mà chúng ta nhận được mặc định khi chúng tôi đã thiết lập mối quan hệ chính. tức là không cần NH chạy sql để sửa chữa Mối quan hệ 1 và bằng cách đánh dấu bộ sưu tập trẻ em là Inverse NH sẽ bỏ qua chạy sql khi bộ sưu tập trẻ em được thêm vào.
Tôi giả định rằng nếu bạn không nói với NH đó là một nghịch đảo, thì sẽ lãng phí công sức khi thực hiện sql để thử và thiết lập mối quan hệ nghịch đảo - mặc dù nó không cần.
Nguồn
2011-10-14 22:36:47
Bạn cũng có thể kiểm tra câu trả lời của tôi, "[Khi sử dụng inverse =" true | false "] (http://stackoverflow.com/a/6951546/221708)", trên một câu hỏi tương tự. –