कुछ googeling के बाद (हालांकि मैं अभी तक इस प्रयास नहीं किया है), आप कर सकते हैं जाहिरा तौर पर कम से कम नक्शा कक्षाएं एक ही सर्वर पर विभिन्न डेटाबेस में तालिकाओं के लिए, मानचित्रण में
<class name="..." table="..." schema="database.schema">
...
</class>
का उपयोग कर।
लेकिन आईएमएचओ यह एक क्रोधित समाधान है, क्योंकि यह सर्वर-स्वतंत्र प्रतीत नहीं होता है। जाहिर है, एनएचबीर्नेट बस क्वेरी के निर्माण में तालिका मूल्य के साथ स्कीमा मान को जोड़ता है - और अधिकांश सर्वरों के लिए, "केवल स्कीमा के साथ डेटाबेस डालना" परिणाम सिंटैक्स में होते हैं, जो काम करता है। लेकिन आप एनएचबीर्नेट को स्पष्ट रूप से नहीं बताते हैं कि "यह स्कीमा है" और "यह डेटाबेस है" ताकि एनएचबीर्नेट स्पष्ट रूप से यह निर्णय ले सके कि क्वेरी कैसे बनाएं - आप प्रासंगिक डेटा इंजेक्शन करके इसकी क्वेरी सृजन के साथ गड़बड़ करते हैं, जहां यह संबंधित नहीं है।
आईएमएचओ, एनएचबीरनेट को ऐसे गंदे हैक्स को दबा देना चाहिए और "स्कीमा" मान में एक अपवाद फेंकना चाहिए।
किसी भी तरह, ऐसा कोई तकनीकी कारण नहीं है कि आपको एक कदम आगे जाने और स्कीमा = "server.database.schema" का उपयोग करने में सक्षम नहीं होना चाहिए, जहां "सर्वर" एक लिंक किए गए सर्वर का नाम है (देखें उदाहरण के लिए http://technet.microsoft.com/de-de/library/ms190479.aspx)
उस गंदे हैक के अलावा, हर कोई कई सत्र कारखानों का उपयोग करने की अनुशंसा करता है।
क्या यह शेरिंग जैसा ही है? –
@ जेसन: शेडिंग मूल रूप से डेटा विभाजन/प्रतिकृति के बारे में है। मेरे मामले में, मुझे विषम डेटा स्टोर पर एक एकीकृत दृश्य होना चाहिए। –