时间:2021-07-01 10:21:17 帮助过:236人阅读
游标用 DECLARE 语句创建。 DECLARE 命名游标,并定义相应的 SELECT 语句,根据需要带 WHERE 和其他子句。例如,下面的语句定义了名为 ordernumbers 的游标,使用了可以检索所有订单的 SELECT 语句。
输入:
create procedure processorders() begin declare ordernumbers cursor for select order_num from orders; end;
分析:这个存储过程并没有做很多事情, DECLARE 语句用来定义和命名游标,这里为 ordernumbers 。 存储过程处理完成后,游标就消失(因为它局限于存储过程)。在定义游标之后,可以打开它。
mysql打开和关闭游标
游标用 OPEN CURSOR 语句来打开:
输入:
open ordernumbers;
分析:在处理 OPEN 语句时执行查询,存储检索出的数据以供浏览和滚动。
游标处理完成后,应当使用如下语句关闭游标:
输入:
close ordernumbers;
分析:CLOSE 释放游标使用的所有内部内存和资源,因此在每个游标不再需要时都应该关闭。
在一个游标关闭后,如果没有重新打开,则不能使用它。但是,使用声明过的游标不需要再次声明,用 OPEN 语句打开它就可以了。
隐含关闭 如果你不明确关闭游标,MySQL将会在到达 END 语句时自动关闭它。
下面是前面例子的修改版本:
输入:
create procedure processorders() BEGIN -- declare the cursor declare ordernumbers cursor for select order_num from orders; -- Open the cursor Open ordernumbers; -- close the cursor close ordernumbers; END;
分析:这个存储过程声明、打开和关闭一个游标。但对检索出的数据什么也没做。
以上就是MySQL游标的创建与打开和关闭游标教程的详细内容,更多请关注Gxl网其它相关文章!