ट्रिगर और संग्रहीत कार्यविधि के बीच का अंतर

Anonim

ट्रिगर बनाम संग्रहीत प्रक्रियाएं

एक डेटाबेस में, एक ट्रिगर निष्पादित की जाने वाली एक प्रक्रिया (कोड खंड) है स्वचालित रूप से जब कुछ विशिष्ट घटनाएं तालिका / दृश्य में होती हैं इसके अन्य उपयोगों में, ट्रिगर मुख्यतः एक डेटाबेस में अखंडता बनाए रखने के लिए उपयोग किया जाता है एक संग्रहीत कार्यविधि एक ऐसी विधि है जिसका प्रयोग रिलेशनल डेटाबेस में पहुंचने वाले एप्लिकेशन द्वारा किया जा सकता है। सामान्यतया, संग्रहित प्रक्रियाओं को डेटा मान्य करने और डेटाबेस को एक्सेस नियंत्रित करने के लिए एक विधि के रूप में उपयोग किया जाता है।

ट्रिगर्स क्या हैं?

एक ट्रिगर एक प्रक्रिया (कोड सेगमेंट) है जो स्वचालित रूप से क्रियान्वित होती है जब कुछ विशेष घटनाओं को डेटाबेस के तालिका / दृश्य में होता है इसके अन्य उपयोगों में, ट्रिगर मुख्यतः एक डेटाबेस में अखंडता बनाए रखने के लिए उपयोग किया जाता है ट्रिगर का उपयोग व्यावसायिक नियमों को लागू करने, डेटाबेस में ऑडिटिंग परिवर्तन और डेटा की नकल करने के लिए भी किया जाता है। सबसे आम ट्रिगर डेटा मैनिपुलिंग लैंग्वेज (डीएमएल) ट्रिगर होते हैं, जो डेटा को छेड़छाड़ में ट्रिगर किया जाता है। कुछ डेटाबेस सिस्टम गैर-डेटा ट्रिगर को समर्थन करता है, जो डेटा परिभाषा भाषा (डीडीएल) घटनाओं के होने पर ट्रिगर होते हैं। कुछ उदाहरण ट्रिगर किए जाते हैं, जो तब किए जाते हैं जब तालिकाओं का निर्माण किया जाता है, प्रतिबद्ध या रोलबैक कार्रवाई होने के दौरान आदि। ये ट्रिगर विशेषकर ऑडिटिंग के लिए उपयोग किए जा सकते हैं ओरेकल डाटाबेस सिस्टम स्कीमा स्तर ट्रिगर्स (यानी डेटाबेस स्कीमा संशोधित होने पर चलाए जाने वाले ट्रिगर) का समर्थन करता है जैसे कि क्रिएशन के बाद, अल्टर से पहले, ड्रॉप के बाद, ड्रॉप के बाद, आदि। ओरेकल द्वारा समर्थित चार मुख्य प्रकार के ट्रिगर रो स्तर के ट्रिगर होते हैं, कॉलम स्तर ट्रिगर करता है, प्रत्येक पंक्ति प्रकार ट्रिगर होता है और प्रत्येक विवरण प्रकार ट्रिगर के लिए।

संग्रहित प्रक्रियाएं क्या हैं?

एक संग्रहीत कार्यविधि एक ऐसी विधि है जिसका इस्तेमाल किसी रिलेशनल डेटाबेस तक पहुँचने के लिए किया जा सकता है। सामान्यतया, संग्रहित प्रक्रियाओं को डेटा मान्य करने और डेटाबेस को एक्सेस नियंत्रित करने के लिए एक विधि के रूप में उपयोग किया जाता है। यदि कुछ डेटा प्रोसेसिंग ऑपरेशन को कई एसक्यूएल स्टेटमेंट्स निष्पादित करने की आवश्यकता होती है, तो इस तरह के कार्यों को संग्रहीत कार्यविधियों के रूप में लागू किया जाता है। जब एक संग्रहीत कार्यविधि का उपयोग किया जाता है, तो एक कॉल या निष्पादन वक्तव्य का उपयोग किया जाना चाहिए। संग्रहित प्रक्रिया परिणाम निकाल सकते हैं (उदाहरण के लिए चयन कथन से परिणाम) इन परिणामों का उपयोग अन्य संग्रहित प्रक्रियाओं या अनुप्रयोगों द्वारा किया जा सकता है। संग्रहीत कार्यविधियों को लिखने के लिए उपयोग की जाने वाली भाषाएं आमतौर पर नियंत्रण संरचनाओं का समर्थन करती हैं जैसे कि, जबकि, के लिए, आदि। उपयोग किए जाने वाले डेटाबेस सिस्टम के आधार पर, कई भाषाएं संग्रहीत कार्यविधियों (जैसे पीएल / एसक्यूएल और जावा में ओरेकल, टी- एसक्यूएल (ट्रांसएक्ट-एसक्यूएल) और माइक्रोसॉफ्ट एसक्यूएल सर्वर में। नेट फ्रेमवर्क) इसके अलावा, MySQL अपनी स्वयं की संग्रहित प्रक्रियाओं का उपयोग करता है

ट्रिगर और संग्रहित प्रक्रियाओं में क्या अंतर है?

एक ट्रिगर एक प्रक्रिया (कोड सेगमेंट) है जिसे स्वचालित रूप से क्रियान्वित किया जाता है जब कुछ विशेष घटनाओं को किसी डेटाबेस के तालिका / दृश्य में होता है, जबकि एक संग्रहीत कार्यविधि एक विधि होती है जिसका प्रयोग रिलेशनल डाटाबेस तक पहुंचने वाले किसी एप्लिकेशन द्वारा किया जा सकता है।ट्रिगर को तब स्वचालित रूप से निष्पादित किया जाता है जब ऐसा ट्रिगर होता है जो घटना का उत्तर देने वाला होता है लेकिन एक संग्रहीत कार्यविधि को निष्पादित करने के लिए एक विशिष्ट कॉल या निष्पादन वक्तव्य का उपयोग करना होगा। संग्रहीत प्रक्रियाओं को डिबग करने से डीबगिंग ट्रिगर कठिन और पेचीदा हो सकता है ट्रिगर बहुत उपयोगी होते हैं जब आप यह सुनिश्चित करना चाहते हैं कि कुछ घटना तब होती है जब एक निश्चित घटना होती है।