我刚接触Oracle,我使用Toad Data Point
创建和测试存储过程。
我创建了这个简单的存储过程:
CREATE OR REPLACE PROCEDURE dummy_sp (
p_recordset OUT SYS_REFCURSOR) AS
BEGIN
OPEN p_recordset FOR
select sysdate, user from dual;
END dummy_sp ;
/
我执行了这个命令,Toad的结果是Executed Successfully
。
现在,我想查看这个存储过程的结果。在Toad Data Point
中,我键入以下内容:
variable mycursor refcursor;
call dummy_sp ( :mycursor );
我收到一个弹出窗口,要求输入参数。我单击OK,就会得到错误ORA-00900: invalid SQL statement
。
如何在Toad Data Point
中查看SP dummy_sp
的结果
在SQL Server
中,我可以运行exec usp_sales
并查看select
语句的结果。在Oracle
和Toad
中一定会有类似的东西,对吧?
发布于 2019-06-27 01:18:45
如果您在等待工具帮助时需要一种变通方法,the default, free IDE for Oracle Database可以很容易地解决这一问题。
如果您使用代码编辑器执行程序,它将自动获取任何输出,无论这些输出是OUT params还是函数返回,包括refcursor
或者,如果您的图形用户界面具有适当的SQLPlus脚本执行支持(SQL Developer没有,不确定您的程序):
var x refcursor
exec dummy_sp(:x);
print :x;
和输出:
PL/SQL procedure successfully completed.
SYSDATE USER
------------------- --------------------------------------------------------------------------------------------------------------------------------
27-JUN-19 13.58.47 HR
https://stackoverflow.com/questions/56777829
复制相似问题