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

标签 oracle plsql

据我所知,游标用于处理私有(private)区域中的SQL语句,我们可以进一步使用它。引用光标在需要的位置定义光标。如果我错了请纠正我..

最佳答案

游标实际上是在数据库上运行 DML(选择、插入、更新、删除)的任何 SQL 语句。

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

引用游标通常用于根据用户输入更改查询的 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;
/

关于oracle - 在 PL/SQL 中,游标和引用游标有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15355739/

相关文章:

sql - 如何使用 shell 脚本执行 oracle 查询并将结果发送到电子邮件中

sql - Oracle 将带有时区的 TIMESTAMP 转换为 DATE

oracle - 使用 Oracle 11g 比较示例表中具有不同行和列的列

java - 如何在 Java 调用 Oracle DB 中运行多个顺序语句?

windows - PL/SQL Developer 不显示 "ő"字符

sql - 在 oracle 9i 中查找可以为空的列会抑制列的索引吗?

sql - 如何同时选择 row_number 和 count over partition?

oracle - 如何调用正在运行的SQL脚本的文件名?

oracle - 创建涉及继承的嵌套表时出错

java - 执行匿名 pl/sql block 并在 java 中获取结果集