SQLPLUS里测试带返回参数的存储过程
过程名p_test
入参 aa varchar2
出参 bb sys_refcursor

在SQLPLUS里如何将sys_refcursor 这个结果集获取出来呢

------解决方案--------------------

--你试过么,就说定义不了。
[TEST@myoracle] SQL>create or replace procedure my_proc(2   i_aa varchar2,3   o_cursor out sys_refcursor4  )5  as6  begin7    open o_cursor for8     select * from tab where 1=i_aa;
  9  end;
 10  /过程已创建。[TEST@myoracle] SQL>var aa varchar2(2000);
[TEST@myoracle] SQL>var bb refcursor;
[TEST@myoracle] SQL>begin :aa := 1; end;2  /PL/SQL 过程已成功完成。[TEST@myoracle] SQL>exec my_proc(:aa,:bb);

PL/SQL 过程已成功完成。[TEST@myoracle] SQL>print :bb;

TNAME                          TABTYPE  CLUSTERID
------------------------------ ------- ----------
TEST                           TABLE
T1                             TABLE[TEST@myoracle] SQL>

------解决方案--------------------
sys_refcursor 实质就是 refcursor
所以,你只要定义 refcursor 就可以
你如果 var bb sys_refcursor 这肯定就报错了

探讨

引用:
SQL code

var aa varchar2(2000);
var bb REFCURSOR;
exec p_test(:aa,:bb);
print bb;

var bb REFCURSOR; --我的出参是sys_refcursor类型,定义不了

------解决方案--------------------pl/sql 是定义不了refcursor的但在sqlplus里完全可以

var aa varchar2(2000);var bb REFCURSOR;exec p_test(:aa,:bb);print bb;

另sqlplus里,var bb sys_refcursor;显示:用法: VAR[IABLE] [ <variable> [ NUMBER | CHAR | CHAR (n [CHAR|BYTE]) |                   VARCHAR2 (n [CHAR|BYTE]) | NCHAR | NCHAR (n) |                   NVARCHAR2 (n) | CLOB | NCLOB | REFCURSOR |                   BINARY_FLOAT | BINARY_DOUBLE ] ] 

转载于:https://www.cnblogs.com/dingyingsi/p/3401347.html

sqlplus 调试存储过程相关推荐

  1. SQL server2008 无法启动调试存储过程

    这两天遇到一件极为郁闷的事情,我在公司台式机上装了试用版sql2008,一切正常,刚好公司分配一部笔记本,感觉2008用起来还可以,就一起装了sqlserver2008 ,结果问题出现了,笔记本上无论 ...

  2. 如果不能调试存储过程

    突然想起用"本地系统帐户"登陆,而SQL Server作为服务运行,不能调试存储过程,其解决方法如下: 控制面板->管理工具->服务->MSSQL(默认的ID)- ...

  3. 存储过程系列之调试存储过程 SQL Server 2005

    在数据库中直接调试   在数据库中直接调试是调试SQL Server 2005的存储过程的最简单的方法. 在Visual Stuido的IDE中你可以选择单步执行存储过程,然后就可以一条语句一条语句地 ...

  4. VS2019调试查看变量_PL/SQL调试存储过程?看这篇就够了

    概述 虽然现在存储过程相对比较少用了,但是平时接触不可避免的要跟存储过程打交道,当需要自己写的时候总会碰到这或那的错误,这个时候一般要怎么调试呢? PL/SQL调试 PL/SQL中提供了[调试存储过程 ...

  5. pl sql developer中如何调试存储过程以及调试包中创建的存储过程

    学会使用PL/SQL Developer的调试功能,对于编写复杂的存储过程,包,funtion...非常有帮助,所以今晚学习了一下: (1)在body里设置断点(在要设置断点的行开始点击鼠标左键就可以 ...

  6. navicat 怎么调试存储过程_Mysql调试存储过程最简单的方法

    以前同事告诉我用临时表插入变量数据来查看,但是这种方法过于麻烦,而且Mysql没有比较好的调试存储过程的工具.今天google了下发现可以用select + 变量名的方法来调试...真是让我汗颜啊. ...

  7. oracle中调试存储过程,详解Oracle调试存储过程

    详解Oracle调试存储过程 一 调试关键步骤 1.在要调试的存储过程右键,选择编辑以进行调试,截图如下: 2.点击小瓢虫,弹出调试窗口,截图如下: 3.输入7839员工编号,点击确认,进行调试,截图 ...

  8. oracle test 卡死,oracle11g plsql调试存储过程卡死的处理技巧

    >> PLsql调试存储过程卡死 有多次进行TEST调试存储过程,在某一个环境动不了,然后卡住,plsql界面进入假死状态了,而这个时候只有在windows里面的任务管理器里面强行关闭pl ...

  9. 在SQL Server Management Studio(SSMS)中调试存储过程

    Debugging is one of the most important but painful parts of any software process. To find some error ...

最新文章

  1. -变量,进制,数据类型,标识符
  2. 三流Java搞技术,二流Java搞框架,一流Java…
  3. 【最详细】数据结构(C语言版 第2版)第三章课后习题答案 严蔚敏 等 编著
  4. 安装Microsoft Sysprep工具
  5. apache mahout_Apache Mahout:入门
  6. C#中IEnumerableT.Aggregate()的简单使用
  7. XAMPP:访问phpmyadmin出错的解决方案
  8. [转]关于flash中图片(jpg\png\gif)旋转后锯齿(模糊)问题
  9. OpenEuler系统是什么
  10. #565. 「LibreOJ Round #10」mathematican 的二进制(期望 + 分治NTT)
  11. C源文件到ELF可执行文件的生成过程
  12. 冒险岛(MapleStory) × Re:从零开始的异世界生活 游戏联动人物素材(含提取方法)
  13. dubbo 支持服务降级吗_Dubbo服务降级设置
  14. 印尼Widya Robotics携手华为云,让建筑工地安全看得见
  15. 运维工程师具备的基本技能
  16. HI3861学习笔记(12)——GPIO输入接口使用
  17. python文字语音互转
  18. 澳门W.B.C开启世界区块链“峰会+嘉年华+学院+全球行”新模式
  19. KubernetesDatabase-k8s中helm方式安装postgresql及pgadmin
  20. 快手福虎迎春季短视频涨粉活动规则[快手获取商品详情]

热门文章

  1. Ubuntu 16.04安装NVIDIA驱动后循环登录问题
  2. 深度学习(三十四)对抗自编码网络-未完待续
  3. wdos8系统服务器丢失,win8一键修复丢失DLL,常见dll丢失一键修复办法
  4. angular 注入器配置_Angular2 多级注入器详解及实例
  5. java jtextfield 高度_java - 固定的JTextField的高度和宽度 - 堆栈内存溢出
  6. 网络规划设计师论文汇总(2012-2018)考前冲刺真题
  7. Android模拟器中sd卡的创建和文件的上传
  8. BAL数据集与BA优化
  9. Java基础---API概述---常用类(Object类/String类)---equals和==
  10. vue-cli起服务chrome不能打断点——每周汇总(第一周)