当时自己初学SQL时,对游标很难理解,现在编写了一个实例游标循环,到时写SQL循环时方便些 declare cursor1 cursor for select *from bb --把查询数据给游标 fetch next from cursor1 into @id,@name -- 定义一个游标有两个变量 while @@fetch_status=0 --返回值成功的时候循环 以上是我个人的理解
下面给大家介绍在什么情况下用隐式游标,什么情况下用显示游标:
1.查询返回单行记录时→隐式游标;
2.查询返回多行记录并逐行进行处理时→显式游标
–显示游标属性
declare
CURSOR cur_emp IS SELECT * FROM emp;
row_emp cur_emp%ROWTYPE;
BEGIN
OPEN cur_emp;
FETCH cur_emp INTO row_emp;
WHILE cur_emp%FOUND
LOOP
dbms_output.put_line(row
游标为您提供了在逐行的基础上而不是一次处理整个结果集为基础的操作表中数据的方法。 1.如何使用游标 1)定义游标语句 Declare Cursor For 2)创建游标语句 Open 3)提取游标列值、移动记录指针 Fetch From [Into ] 4)使用Fetch_Status利用While循环处理游标中的行 5)删除游标并释放语句 Close /Deallocate 6)游标应用实例 –定义游标 Declare cur_Depart Cursor For
表如下:
如下存储过程使用游标遍历所有数据:
CREATE OR REPLACE PROCEDURE "CFFTEST"."SELECT_STUDENT"("id" IN INT)
AS
myId int;
myName varchar(50);
cursor myCursor is select id, name from cfftest.student;
BEGIN
open myCursor;
loop
fetch myCursor into myId, myName;
表如下:
如下存储过程使用游标遍历所有数据:
CREATE OR REPLACE PROCEDURE "CFFTEST"."SELECT_STUDENT"("id" IN INT)
AS
myId int;
myName varchar(50);
cursor myCursor is select id, name from cfftest.student;
BEGIN
open myCursor;
loop
fetch myCursor into myId, myName;
mysql声明游标的方法:
1、声明变量和游标
declare result varchar(3000);
declare flag1 varchar(100);
DECLARE done INT DEFAULT FALSE;
declare cur1 CURSOR FOR SELECT flag from bmlx;
2、变量赋值
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
set result = '';
3、打开游标和