मुझे कोई समस्या है मुझे यकीन नहीं है कि कैसे हल करना सबसे अच्छा है।असिंक्रोनस एसक्यूएल ऑपरेशंस
मेरे पास एक ऐसा एप्लिकेशन है जो विज्ञापन अनुरोधों के जवाब में डेटाबेस अपडेट करता है। विशेष रूप से एक अनुरोध काफी आम है। अनुरोध एक अद्यतन है कि स्वयं ही काफी सरल है, लेकिन इसमें कुछ जटिल पूर्व शर्त हैं।
-
इस अनुरोध व्यापार परत पहले अनुरोध डेटा स्तर से डेटा का एक सेट के लिए
- ।
- व्यापार तर्क परत डेटाबेस से डेटा और अनुरोध से मापदंडों का मूल्यांकन, से इस कार्रवाई की जानी निर्धारित किया जाता है, और अनुरोध के प्रतिक्रिया संदेश (रों) बनाया जाता है।
- व्यापार परत अब वास्तविक अद्यतन आदेश निष्पादित करता है जो अनुरोध के उद्देश्य है।
यह अंतिम चरण समस्या है, यह आदेश डेटाबेस की स्थिति पर निर्भर है, जो व्यापार तर्क के बाद से बदल सकता है। डेटाबेस में कई दौर-यात्राओं में इस ऑपरेशन में पढ़ने वाले डेटा को लॉक करना एक अच्छा विचार नहीं लगता है। क्या ऐसा कुछ करने के लिए 'सर्वश्रेष्ठ अभ्यास' तरीका है? धन्यवाद!
हां, लेकिन यह संग्रहीत प्रक्रिया में व्यावसायिक तर्क (जिसे मैं आसानी से बदलना चाहता हूं) डालता हूं। – Paul
@ पॉल, अगर संग्रहीत प्रो केवल यह सत्यापित करने की जांच नहीं कर रहा है कि डेटा बदल नहीं गया है। मैं तर्क दूंगा कि यदि आप बीएल में कर रहे हैं तो अपडेट करने के लिए सही तालिका/कॉलम निर्धारित करने के लिए शर्तों की जांच कर रहे हैं, जो किसी भी संग्रहित प्रो में होना चाहिए। – AllenG
यह जांचना कि रेफरेंसियल अखंडता और विदेशी कुंजी ठीक रहेगी, सबसे अच्छा अभ्यास है, डीबी निहित रूप से संरचना और मेटाडाटा (स्पष्ट रूप से प्रदूषित प्रक्रियात्मक कोड के माध्यम से) के माध्यम से व्यावसायिक तर्क का समर्थन करता है, यह भी अच्छा अभ्यास है। – amelvin