oracle – 在PL / SQL中,游标和引用游标之间有什么区别?

据我所知,游标用于处理私有区域中的SQL语句,我们可以进一步使用它. Ref游标将光标定义在需要它的位置.如果我错了请纠正我.. 最佳答案 游标实际上是在数据库上运行DML(选择,插入,更新,删除)的任何SQL语句.

引用游标是指向结果集的指针.这通常用于在数据库服务器上打开查询,然后将其留给客户端以获取所需的结果.引用游标也是一个游标,但在讨论静态SQL时通常会使用术语游标.

Ref游标通常用于根据用户输入更改查询的where子句.例如,此函数可以打开对emp表或dept表的查询,具体取决于用户选择的内容:

create or replace function f (input in varchar2) return sys_refcursor as
  cur sys_refcursor;
begin

  if input = 'EMP' then
    open cur for select * from emp;
  elsif input = 'DEPT' then
    open cur for select * from dept;
  end if;
  return cur;
end;
/
点赞