创建一个MySQL存储过程,该过程使用游标从表中获取行?
以下是一个存储过程,该存储过程从具有以下数据的表“student_info”的名称列中获取记录-
mysql> Select * from Student_info;
+-----+---------+------------+------------+
| id | Name | Address | Subject |
+-----+---------+------------+------------+
| 101 | YashPal | Amritsar | History |
| 105 | Gaurav | Chandigarh | Literature |
| 125 | Raman | Shimla | Computers |
| 127 | Ram | Jhansi | Computers |
+-----+---------+------------+------------+
4 rows in set (0.00 sec)
mysql> Delimiter //
mysql> CREATE PROCEDURE cursor_defined(OUT val VARCHAR(20))
-> BEGIN
-> DECLARE a,b VARCHAR(20);
-> DECLARE cur_1 CURSOR for SELECT Name from student_info;
-> DECLARE CONTINUE HANDLER FOR NOT FOUND
-> SET b = 1;
-> OPEN CUR_1;
-> REPEAT
-> FETCH CUR_1 INTO a;
-> UNTIL b = 1
-> END REPEAT;
-> CLOSE CUR_1;
-> SET val = a;
-> END//
mysql> Delimiter ;
mysql> Call cursor_defined2(@val);
mysql> Select @val;
+------+
| @val |
+------+
| Ram |
+------+
1 row in set (0.00 sec)从上面的结果集中,我们可以看到val参数的值为'Ram',因为它是'Name'列的最后一个值。
热门推荐
3 祝福语简短的微信
10 幼儿祝福语大全简短贺卡
11 感谢教官文案祝福语简短
12 鼠年同事祝福语简短创意
13 元旦祝福语 简短独特群发
14 妈咪跟我生日祝福语简短
15 给儿子新婚祝福语简短
16 伴娘祝福语长文案简短
17 恭喜高考完祝福语简短
18 生日祝福语送老公简短