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

मैं OUT पैरामीटर के साथ MySQL संग्रहीत कार्यविधि कैसे बना सकता हूँ?


इसे समझने के लिए हम 'student_info' नाम की तालिका का उपयोग कर रहे हैं, जिसके निम्नलिखित मान हैं -

mysql> Select * from student_info;
+------+---------+------------+------------+
| id   | Name    | Address    | Subject    |
+------+---------+------------+------------+
| 101  | YashPal | Amritsar   | History    |
| 105  | Gaurav  | Jaipur     | Literature |
| 110  | Rahul   | Chandigarh | History    |
| 125  | Raman   | Shimla     | Computers  |
+------+---------+------------+------------+
4 rows in set (0.00 sec)

अब, निम्न क्वेरी की सहायता से, हम OUT पैरामीटर के साथ एक संग्रहीत कार्यविधि बनाएंगे जो विषय नाम को पैरामीटर के रूप में प्रदान करके किसी विशेष विषय के कुल की गणना करेगा।

mysql> DELIMITER // ;
mysql> Create Procedure subjects (IN S_Subject VARCHAR(25), OUT total INT)
   -> BEGIN
   -> SELECT count(subject)
   -> INTO total
   -> FROM student_info
   -> WHERE subject = S_subject;
   -> END //
Query OK, 0 rows affected (0.00 sec)

mysql> DELIMITER ;

'एस-सब्जेक्ट' IN पैरामीटर है जो उन विषयों की संख्या है जिन्हें हम गिनना चाहते हैं और 'टोटल' OUT पैरामीटर है जो किसी विशेष विषय के लिए विषयों की संख्या को संग्रहीत करता है।

mysql> CALL subjects('Computers', @total);
Query OK, 1 row affected (0.02 sec)

mysql> Select @total;
+--------+
| @total |
+--------+
|      1 |
+--------+
1 row in set (0.01 sec)

mysql> CALL subjects('History', @total);
Query OK, 1 row affected (0.00 sec)

mysql> Select @total;
+--------+
| @total |
+--------+
|      2 |
+--------+
1 row in set (0.00 sec)

  1. हम सबक्वायरी के साथ MySQL व्यू कैसे बना सकते हैं?

    सबक्वायरी के साथ MySQL व्यू के निर्माण को स्पष्ट करने के लिए हम कार्स तालिका से निम्नलिखित डेटा का उपयोग कर रहे हैं - mysql> select * from cars; +------+--------------+---------+ | ID   | Name         | Price   | +------+--------------+---------+ |    1 | N

  1. MySQL में सीमांकक के साथ एक संग्रहीत कार्यविधि बनाएँ

    आप क्रिएट प्रोसीजर कमांड का उपयोग करके एक संग्रहीत कार्यविधि बना सकते हैं। वाक्य रचना इस प्रकार है - delimiter//CREATE PROCEDURE yourStoreProcedureName()BEGIN वेरिएबल को यहां डिक्लेयर करें क्वेरी स्टेटमेंटEND//delimiter // संग्रहीत कार्यविधि बनाने के लिए उपरोक्त सिंटैक्स लागू करें। क्वेरी इस प्रकार

  1. MySQL संग्रहीत-प्रक्रिया:आउट पैरामीटर?

    यहां एक संग्रहीत प्रक्रिया है जो इनपुट (IN) के लिए एक पैरामीटर और आउटपुट (OUT) के लिए दूसरा पैरामीटर लेती है सीमांकक; संग्रहीत कार्यविधि को कॉल करें और उपयोगकर्ता चर के लिए मान भेजें। वाक्य रचना इस प्रकार है अपने StoredProcedureName(anyIntegerValue,@anyVariableName) को कॉल करें; जाँच करें कि @any