[英]How to call a procedure from a package?
我想从包中调用一个过程:
exec TEST_Procedure.TEST_Procedure_PR(Parameter1, Parameter2, Parameter3, Parameter4, Parameter5);
这些参数全部用引号引起,我有5个IN参数和1个OUT(参考光标)。
但是,当我直接在包中调用该过程时,会得到我的值。 如果我使用SQL从cmd行调用过程,则会收到错误消息:
ORA-06550: line 1, column 7:
PLS-00306: wrong number or types of arguments in call to 'TEST_Procedure_PR'
我究竟做错了什么?
在您的程序包中,仅编写过程调用而无需EXEC
语句,这仅在SQL * Plus中才需要。 例如,
CREATE PACKAGE BODY YOUR_PACKAGE AS
PROCEDURE SOME_PROCEDURE IS
BEGIN
TEST_Procedure.TEST_Procedure_PR(Parameter1,
Parameter2,
Parameter3,
Parameter4,
Parameter5);
END SOME_PROCEDURE;
END YOUR_PACKAGE;
祝你好运。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.