将参数从一个过程传递到另一个PLSQL
我需要将过程“ proc1”的参数“ p_date”传递给过程“ proc2”。可能有必要使用全局变量或其他方式。感谢您的帮助。
CREATE OR REPLACE PACKAGE PKG_TEST IS
PROCEDURE proc1 (p_date DATE );
PROCEDURE proc2;
END;
/
CREATE OR REPLACE PACKAGE BODY PKG_TEST IS
PROCEDURE proc1 AS
BEGIN
INSERT INTO tbl_ins
SELECT * FROM tbl WHERE dt = p_date;
END proc1;
PROCEDURE proc2 AS
BEGIN
DELETE tbl_ins WHERE dt = p_date;
END proc2;
END PKG_TEST;
I need to pass parameter "p_date" of procedure "Proc1" to procedure "Proc2" . It may be necessary to use a global variable or some other way. Thanks for the help.
CREATE OR REPLACE PACKAGE PKG_TEST IS
PROCEDURE proc1 (p_date DATE );
PROCEDURE proc2;
END;
/
CREATE OR REPLACE PACKAGE BODY PKG_TEST IS
PROCEDURE proc1 AS
BEGIN
INSERT INTO tbl_ins
SELECT * FROM tbl WHERE dt = p_date;
END proc1;
PROCEDURE proc2 AS
BEGIN
DELETE tbl_ins WHERE dt = p_date;
END proc2;
END PKG_TEST;
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
重新定义您的软件包,以便proc_2还采用日期参数:
Redefine your package so that PROC_2 also takes a DATE parameter:
制作包装没有真正的原因。
就您而
proc1
的参数,您可以这样做:It's not good idea to make packages "stateful" without a real reason.
In your case, if you are going to call
proc2
fromproc1
(otherwise, I don't know why you may want to hard code it to the same value as your input parameter ofproc1
), you can do like this: