इसके लिए, संग्रहीत कार्यविधि का उपयोग करें। आइए पहले एक टेबल बनाएं -
mysql> टेबल बनाएं DemoTable(Id int, Name varchar(100));क्वेरी ओके, 0 पंक्तियाँ प्रभावित (1.51 सेकंड)
इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें -
mysql> डेमोटेबल मानों में डालें(10,'जॉन'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.17 सेकंड) mysql> डेमोटेबल मानों में डालें (11, 'क्रिस'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.41 सेकंड) )
चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें -
mysql> डेमोटेबल से *चुनें;
यह निम्नलिखित आउटपुट उत्पन्न करेगा -
<पूर्व>+----------+----------+| आईडी | नाम |+----------+----------+| 10 | जॉन || 11 | क्रिस |+------+----------+2 पंक्तियों में सेट (0.00 सेकंड)MySQL में तैयार स्टेटमेंट से वैरिएबल को SQL रिजल्ट असाइन करने की क्वेरी निम्नलिखित है -
mysql> DELIMITER //mysql> क्रिएट प्रोसीड्योर तैयार_स्टेटमेंट_डेमो (nameOfTable VARCHAR(20), IN nameOfColumn VARCHAR(20), IN idColumnName INT)BEGIN SET @holdResult=CONCAT('SELECT', nameOfColumn, 'INTO @value FROM' , nameOfTable, 'WHERE id =', idColumnName); @होल्ड रिसेट से तैयारी करें; निष्पादित सेंट; DEALLOCATE तैयार सेंट; END//क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.20 सेकंड)mysql> DELIMITER;
कॉल कमांड का उपयोग करके संग्रहीत कार्यविधि को कॉल करें -
mysql> कॉल तैयार_स्टेटमेंट_डेमो('डेमोटेबल','नाम',10);क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित हैं, 2 चेतावनियाँ (0.00 सेकंड)
अब वेरिएबल @value -
. का मान जांचेंmysql> @value चुनें;
यह निम्नलिखित आउटपुट उत्पन्न करेगा -
<पूर्व>+----------+| @value |+-----------+| जॉन |+----------+1 पंक्ति सेट में (0.00 सेकंड)