请问Oracle中如何在通过创建一个package,然后在package中创建procedure的语法是怎么样的啊

2025-03-25 22:39:01
推荐回答(4个)
回答1:

先create package,在里面声明procedure

然后再create package body,在package body里面编写procedure的代码即可(相当于create procedure)。

包里没有create procedure

示例如下:

CREATE OR REPLACE PACKAGE pkg_test IS
PROCEDURE pro_test(V_OLD IN VARCHAR2,V_NEW IN VARCHAR2);
...
END test;
/

CREATE OR REPLACE PACKAGE BODY pkg_test IS
...

PROCEDURE pro_test(V_OLD IN VARCHAR2,V_NEW IN VARCHAR2) IS
BEGIN
...
END;

...
END pkg_test;

回答2:

现在包头中声明 PROCEDURE P_NAME();
然后直接在包体中写
PROCEDURE P_NAME
IS
BEGIN
.......
END;
就行了,包里的东西,不需要写CREATE OR REPLACE

回答3:

在package中,去掉create.其它语法一致

回答4:

先创建PACKAGE,然后在Package里定义Procedure、funcation等。
如:
1、先创建PKS包头:
CREATE OR REPLACE PACKAGE PKG_TEST AS
PROCEDURE P_TEST;
END PKG_TEST;

2、创建PKB包体:
CREATE OR REPLACE PACKAGE BODY PKG_TEST AS
PROCEDURE P_TEST
AS
BEGIN
END P_TEST;
END PKG_TEST;