MySQL स्टोर्ड प्रोसीजर में सशर्त तर्क (Conditional Logic) लागू करने के लिए IF-THEN-ELSE स्टेटमेंट का उपयोग किया जाता है। सही सिंटैक्स और डिलिमिटर का ध्यान रखना महत्वपूर्ण है।
सही सिंटैक्स
DELIMITER //
CREATE PROCEDURE procedure_name(IN param_name INT)
BEGIN
IF condition THEN
statement1;
ELSE
statement2;
END IF;
END //
DELIMITER ;
पूर्ण उदाहरण
mysql> DELIMITER //
mysql> CREATE PROCEDURE Test_Demo(IN inputValue INT)
-> BEGIN
-> IF inputValue = 10 THEN
-> SELECT 'You have won 100$';
-> ELSE
-> SELECT 'Sorry !!!';
-> END IF;
-> END //
Query OK, 0 rows affected (0.20 sec)
mysql> DELIMITER ;
प्रोसीजर कॉल करें
mysql> CALL Test_Demo(10);
आउटपुट
+-------------------+
| You have won 100$ |
+-------------------+
| You have won 100$ |
+-------------------+
महत्वपूर्ण बिंदु
DELIMITER //- डिफ़ॉल्ट सेमीकॉलन को अस्थायी रूप से बदलता हैEND //- प्रोसीजर के अंत को चिह्नित करता हैDELIMITER ;- डिलिमिटर को वापस सेमीकॉलन पर सेट करता हैIF ... THEN ... ELSE ... END IF;- प्रत्येक स्टेटमेंट सेमीकॉलन से समाप्त होना चाहिए
सामान्य गलती: END IF के बाद सेमीकॉलन भूलना या गलत डिलिमिटर उपयोग करना।