उदाहरण
टेबल बनाएं:
mysql> create table DemoTable (
-> Id int,
-> Score int
-> );
Query OK, 0 rows affected (0.69 sec)
रिकॉर्ड डालें:
mysql> insert into DemoTable values(1, 858858686); Query OK, 1 row affected (0.11 sec) mysql> insert into DemoTable values(2, 9900554); Query OK, 1 row affected (0.22 sec) mysql> insert into DemoTable values(3, 646565667); Query OK, 1 row affected (0.15 sec)
सभी रिकॉर्ड देखें:
mysql> select * from DemoTable;
आउटपुट
+------+-----------+ | Id | Score | +------+-----------+ | 1 | 858858686 | | 2 | 9900554 | | 3 | 646565667 | +------+-----------+ 3 rows in set (0.00 sec)
MySQL स्टोर्ड प्रोसीजर:
mysql> DELIMITER //
mysql> CREATE PROCEDURE Test_StoredProcedure(in id INT, OUT scoreValue INT)
-> BEGIN
-> SELECT Score
-> INTO scoreValue
-> FROM DemoTable tbl
-> WHERE tbl.Id = id;
-> END
-> //
Query OK, 0 rows affected (0.18 sec)
mysql> DELIMITER ;
स्टोर्ड प्रोसीजर को कॉल करें और आउटपुट को '@result' वेरिएबल में स्टोर करें:
mysql> call Test_StoredProcedure(2, @result); Query OK, 1 row affected (0.00 sec)
वेरिएबल मान प्रदर्शित करें:
mysql> select @result;
आउटपुट
+---------+ | @result | +---------+ | 9900554 | +---------+ 1 row in set (0.00 sec)
मुख्य बिंदु: IN पैरामीटर इनपुट के लिए, OUT पैरामीटर आउटपुट के लिए। INTO क्लॉज SELECT परिणाम को वेरिएबल में असाइन करता है।