Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> MySql

MySQL संग्रहीत प्रक्रिया वापसी मूल्य?

<घंटा/>

संग्रहीत प्रक्रिया से एक मान वापस करने के लिए, आपको उपयोगकर्ता परिभाषित सत्र विशिष्ट चर का उपयोग करने की आवश्यकता है। वैरिएबल नाम से पहले @ सिंबल जोड़ें।

उदाहरण के लिए, वैरिएबल वैलिडो के लिए @symbol का उपयोग करें। उसी के लिए वाक्य रचना इस प्रकार है:

चुनें @valido;

जब भी आप सेलेक्ट स्टेटमेंट का उपयोग करते हैं, तो आपको @anyVariableName का उपयोग करना होगा। वाक्य रचना इस प्रकार है:

चुनें @anyVariableName;

यहाँ वापसी मूल्य की संग्रहीत कार्यविधि का डेमो दिया गया है। संग्रहीत कार्यविधि बनाने की क्वेरी इस प्रकार है:

mysql> प्रक्रिया बनाएं ReturnValueFrom_StoredProcedure -> ( -> num1 int में, -> num2 int में, -> वैलिडो int -> ) -> प्रारंभ करें -> IF (num1> 4 और num2> 5) फिर -> SET वैधो =(संख्या 1 + संख्या 2); -> ELSE -> मान्य सेट करें =(num1-num2); -> अंत अगर; -> @valido चुनें; -> समाप्त//क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.32 सेकंड)mysql> DELIMITER;

कॉल कमांड का उपयोग करके संग्रहीत कार्यविधि को कॉल करें। क्वेरी इस प्रकार है:

mysql> कॉल ReturnValueFrom_StoreedProcedure(10,6,@TotalSum);+---------+| @valido |+------------+| NULL |+-----------+1 पंक्ति सेट में (0.00 सेकंड)क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.01 सेकंड)

अब सेलेक्ट स्टेटमेंट का उपयोग करके संग्रहित प्रक्रिया के परिणाम की जाँच करें। क्वेरी इस प्रकार है:

mysql> @TotalSum चुनें;

निम्न आउटपुट है:

<पूर्व>+-----------+| @TotalSum |+-----------+| 16 |+-----------+1 पंक्ति सेट में (0.00 सेकंड)

अब दो मूल्यों के अंतर के लिए दूसरी कॉल। संग्रहीत कार्यविधि को कॉल करें।

mysql> कॉल ReturnValueFrom_StoreedProcedure(4,2,@TotalDiff);+---------+| @valido |+------------+| NULL |+-----------+1 पंक्ति सेट में (0.00 सेकंड)क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.01 सेकंड)

चयन कथन का उपयोग करके उपयोगकर्ता परिभाषित सत्र-विशिष्ट चर से परिणाम की जाँच करें। क्वेरी इस प्रकार है:

mysql> @TotalDiff चुनें;

निम्न आउटपुट है:

<पूर्व>+---------------+| @TotalDiff |+---------------+| 2 |+---------------+1 पंक्ति सेट में (0.00 सेकंड)
  1. एक MySQL संग्रहीत प्रक्रिया में गणितीय संचालन करें?

    आइए एक संग्रहित प्रक्रिया बनाएं। यहां, हम राशि*मात्रा की गणना कर रहे हैं यानी गणितीय संक्रियाओं को लागू करना - सीमांकक; अब आप कॉल कमांड का उपयोग करके एक संग्रहीत कार्यविधि को कॉल कर सकते हैं - कॉल कैलकुलेशन_proc(250,3); यह निम्नलिखित आउटपुट देगा - +----------+----------+----------+| राशि | मात्र

  1. MySQL संग्रहीत कार्यविधि में किसी तालिका में डेटा सम्मिलित करें?

    संग्रहीत कार्यविधि में तालिका में सम्मिलित करने के लिए, सिंटैक्स इस प्रकार है - create procedure yourProcedureName(OptionalParameter)    begin    insert into yourTableName() values(yourValue1,yourValue2,...N); end में डालें ऊपर दिए गए सिंटैक्स को समझने के लिए, आइए पहले एक टेबल ब

  1. एक कॉलम के मान को एक MySQL संग्रहीत कार्यविधि के चर में संग्रहीत करें

    एक चर घोषित करने के लिए, MySQL संग्रहीत कार्यविधि में DECLARE का उपयोग करें। आइए पहले एक टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.49 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable2034(StudentName,StudentAge) में डालें मान (माइक, 19); क्वेरी ठीक है, 1 पंक्ति प्र