मैं देख सकता हूं कि "मालिक" कहां आता है, लेकिन एक एसोसिएशन एक पाइप है, और आप नीचे या तो अंत देख सकते हैं, इसलिए यह कहने के लिए कि कौन सी इकाई पाइप का मालिक है।
इसे देखने का एक अलग तरीका यह है कि एक से कई रिश्तों में, वास्तव में 2 रिश्ते चल रहे हैं।
संबंध 1: कई बच्चों के माता-पिता।
संबंध 2: प्रत्येक बच्चा एक अभिभावक के लिए
इसलिए NH, DB में इनमें से प्रत्येक को संग्रहीत करने के लिए sql चलाने का प्रयास करेगा। लेकिन इसकी आवश्यकता नहीं है क्योंकि जब आप किसी बच्चे को संग्रहीत करते समय संबंध कुंजी 2 में विदेशी कुंजी सेट करते हैं, तो यह स्वचालित रूप से बच्चे के लिए एक माता-पिता के रिश्ते को भी तय कर देता है क्योंकि संबंध 1 संबंध 2 का "उलटा" है ।
तो उलटा मतलब है, इसका कुछ जो हम मुख्य संबंध निर्धारित करने के बाद डिफ़ॉल्ट रूप से प्राप्त करते हैं। यानी एनएच को संबंध 1 को ठीक करने के लिए एसक्यूएल को चलाने की कोई जरूरत नहीं है और बच्चों के कलेक्शन को एक एनएच के रूप में चिन्हित करके एनएच बच्चों के संग्रह में जुड़ने पर एसक्यूएल को चलाना छोड़ देगा।
मुझे लगता है कि अगर आपने एनएच को नहीं बताया था, तो यह उलटा था, लेकिन यह उलटा करने के लिए एसक्यूएल करने में प्रयास बर्बाद कर देगा और उलटे संबंध को भी स्थापित करेगा - भले ही इसकी आवश्यकता नहीं थी।