आउटपुट पैरामीटर के लिए यूजर-डिफाइंड वेरिएबल का उपयोग
स्टोर्ड प्रोसीजर से मान वापस पाने के लिए @ प्रीफिक्स वाले यूजर-डिफाइंड वेरिएबल का उपयोग करें:
CALL yourStoredProcedureName(param1, param2, ..., @yourVariableName); SELECT @yourVariableName;
उदाहरण: टेबल और स्टोर्ड प्रोसीजर बनाना
mysql> CREATE TABLE StoredProcedureDemo (
-> Id INT,
-> Name VARCHAR(10)
-> );
mysql> INSERT INTO StoredProcedureDemo VALUES(1, 'John'); mysql> INSERT INTO StoredProcedureDemo VALUES(2, 'Carol');
आउटपुट पैरामीटर वाला स्टोर्ड प्रोसीजर
mysql> DELIMITER //
mysql> CREATE PROCEDURE Update_table(
-> IN Id INT,
-> IN Name VARCHAR(20),
-> OUT message VARCHAR(50)
-> )
-> BEGIN
-> SET message = 'DATABASE HAS BEEN UPDATED';
-> INSERT INTO StoredProcedureDemo VALUES (Id, Name);
-> END;
-> //
mysql> DELIMITER ;
प्रोसीजर कॉल करना और आउटपुट प्राप्त करना
mysql> CALL Update_table(3, 'Larry', @UserMessage); Query OK, 1 row affected mysql> SELECT @UserMessage;
आउटपुट:
+---------------------------+ | @UserMessage | +---------------------------+ | DATABASE HAS BEEN UPDATED | +---------------------------+
टेबल में नया रिकॉर्ड वेरीफाई करना
mysql> SELECT * FROM StoredProcedureDemo;
+------+-------+ | Id | Name | +------+-------+ | 1 | John | | 2 | Carol | | 3 | Larry | +------+-------+
मुख्य बिंदु: आउटपुट पैरामीटर के लिए हमेशा @variable_name फॉर्मेट में यूजर-डिफाइंड वेरिएबल का उपयोग करें, लोकल वेरिएबल का नहीं।