mysql游标怎么知道数据到最后一行
1个回答
展开全部
给你一个Oracle的示例,请根据自己的应用场景,参考调测自己mysql的代码
在Oracle数据库中:
declare
sname varchar2( 20); --声明变量
cursor student_cursor is select sname from student ; --声明指向表student的【游标】
begin
open student_cursor;--打开游标
fetch student_cursor into sname ;--获取游标的当前指向值,使游标指针往下移动
while student_cursor%found --【你提问的应该是这个条件】判断游标指针是否指向某行记录,即是否已遍历完全表
loop--循环遍历
dbms_output.put_line ('学生姓名' ||sname );--输出当前遍历访问的行记录信息
fetch student_cursor into sname;--获取游标的当前指向值,使游标指针往下移动
end loop;--循环体结束
close student_cursor;--关闭游标,对应前面open操作
end;
另一个在任何数据库都通用的办法是:
首先统计表的行数并记录下来,假定是变量cnt_stu,再定义一个计数变量i=1
在循环体中,当i<=cnt_stu,就执行遍历,并且i=i+1;,这样当遍历完了也会跳出循环体。
在Oracle数据库中:
declare
sname varchar2( 20); --声明变量
cursor student_cursor is select sname from student ; --声明指向表student的【游标】
begin
open student_cursor;--打开游标
fetch student_cursor into sname ;--获取游标的当前指向值,使游标指针往下移动
while student_cursor%found --【你提问的应该是这个条件】判断游标指针是否指向某行记录,即是否已遍历完全表
loop--循环遍历
dbms_output.put_line ('学生姓名' ||sname );--输出当前遍历访问的行记录信息
fetch student_cursor into sname;--获取游标的当前指向值,使游标指针往下移动
end loop;--循环体结束
close student_cursor;--关闭游标,对应前面open操作
end;
另一个在任何数据库都通用的办法是:
首先统计表的行数并记录下来,假定是变量cnt_stu,再定义一个计数变量i=1
在循环体中,当i<=cnt_stu,就执行遍历,并且i=i+1;,这样当遍历完了也会跳出循环体。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询