MySQL स्टोर्ड प्रोसीजर में DECLARE से स्थानीय वेरिएबल घोषित करें, SET से मान असाइन करें, और गणना करें।
स्टोर्ड प्रोसीजर बनाएं
mysql> DELIMITER //
mysql> CREATE PROCEDURE declare_demo_sp()
BEGIN
DECLARE Value1 INT;
DECLARE Value2 INT;
SET Value1 = 100;
SET Value2 = 2000;
SELECT Value1, Value2, Value1 * Value2 AS MultiplicationResult;
END //
mysql> DELIMITER ;
कॉल करें
mysql> CALL declare_demo_sp();
आउटपुट:
+--------+--------+----------------------+ | Value1 | Value2 | MultiplicationResult | +--------+--------+----------------------+ | 100 | 2000 | 200000 | +--------+--------+----------------------+
व्याख्या
DECLARE var_name TYPE→ प्रोसीजर-स्थानीय वेरिएबल (सत्र वेरिएबल@varसे अलग)।SET var = value→ मान असाइन।SELECT ...→ परिणाम सेट लौटाता है।DELIMITER //→ प्रोसीजर बॉडी में;उपयोग करने के लिए डिलीमीटर बदलें।
DECLARE vs SET @var
| पहलू | DECLARE (स्थानीय) | SET @var (सत्र) |
|---|---|---|
| स्कोप | प्रोसीजर/ब्लॉक | पूरा सत्र |
| जीवनकाल | प्रोसीजर समाप्ति तक | सत्र समाप्ति तक |
| सिंटैक्स | DECLARE x INT | SET @x = 1 |
| डिफ़ॉल्ट | NULL | NULL |
IN/OUT पैरामीटर के साथ
CREATE PROCEDURE calc(IN a INT, IN b INT, OUT sum INT, OUT product INT)
BEGIN
SET sum = a + b;
SET product = a * b;
END;