本文以oracle来进行说明
概念
游标(Cursor)形象地看成一个变动的光标。它实际上是一个指针,它在一段Oracle存放数据查询结果集或数据操作结果集的内存中,这个指针可以指向结果集中的任何一条记
定义游标对应查询的结果集,存放在内存中
分类
显示游标
隐式游标
和显示游标截然不同,它由PL/SQL自动管理,也被称之为SQL游标。该游标由Oracle自动管理,用户无法控制,但能得到它的属性。
使用游标
- 申明游标
- 打开游标
- 操作游标
- 关闭游标
cursor emp_corsor is select ename,ejob,esalary,ecomn from emp where did='1004';
--声明变量c_row使用rowtype类型,存储一条记录
c_row emp_corsor%rowtype;
begin
--遍历游标emp_corsor,把获取的每一条记录存储到c_row中
for c_row in emp_corsor loop
dbms_output.put_line(c_row.ename||'-'||c_row.ejob||'-'||c_row.esalary||'-'||c_row.ecomn);
end loop;
end;
引用参考:
Oracle游标(Cursor)------------------数据的缓存区_西门吹菊的博客-CSDN博客
Oracle 性能优化 之 游标及 SQL - 进_进 - 博客园