क्या आजकल (SQLserver के अंदर) तालिकाओं के बीच अवरोध पैदा करने का कोई कारण है? अगर ऐसा हैं तोह कब? मेरे क्षेत्र में अधिकांश एप्लिकेशन ऑब्जेक्ट सिद्धांतों पर बने होते हैं और टेबल मांग पर जुड़ जाते हैं। मांग आवेदन से जरूरत के आधार पर कर रहे हैं। मैं एक साधारण लुक-अप के लिए विवश तालिकाओं का एक गुच्छा लोड नहीं करूंगा, जो बदले में (कार्रवाई के बाद) एक दूसरे को देखने की आवश्यकता है।
ORM उपकरण जैसे कि EntityContext, Linq2Data, NHibernate भी खुद से बाधाओं को संभालते हैं, कम से कम आप जानते हैं कि एक दूसरे को किन तालिकाओं की आवश्यकता है। सर्वर के अंदर बाधाओं को करना दो बार एक ही परिवर्तन करने (मजबूर करने) के बारे में है?
यह आमतौर पर निर्णय के लिए एक सवाल नहीं है, लेकिन इस डेटाबेस को काफी अलग बनाया गया है। डिजाइन नियमित रूप से अच्छा दिखता है, ज्यादातर अनुप्रयोगों द्वारा उपयोग की जाने वाली वस्तुओं को प्रतिबिंबित करता है। मुझे परेशान करने वाले सभी बाधाओं को "कैस्केड नहीं" के साथ SQLserver के अंदर कॉन्फ़िगर किया गया है। जिसका अर्थ है कि नए डेटाबेस प्रश्नों को कोड करते समय आपको "तलाश और ढूंढना" खेलना होगा। कुछ मामलों में एकल डिलीट करने के लिए एक सटीक क्रम के 10 स्तर तक की आवश्यकता होती है।
यह मुझे आश्चर्यचकित करता है और मुझे यकीन नहीं है कि इसे कैसे संभालना है।
मेरी सरल दुनिया में, यह सेटिंग अधिकांश उद्देश्य को खोने का कारण बनती है। ठीक है अगर डेटाबेस को डिज़ाइन के ज्ञान के बिना होस्ट से एक्सेस किया गया था।
आप इस परिदृश्य में कैसे कार्य करेंगे?
क्यों नहीं सभी अवरोधों को db से हटाकर आवेदन स्तर पर रखा जाए?