Database 如何在不删除包的情况下更改oracle包
我需要在不删除包的情况下向该包添加函数吗?只需添加另一个函数Database 如何在不删除包的情况下更改oracle包,database,oracle,package,alter,Database,Oracle,Package,Alter,我需要在不删除包的情况下向该包添加函数吗?只需添加另一个函数 DROP PACKAGE BANINST1.SB_ENROLLMENT CREATE OR REPLACE PACKAGE BANINST1.sb_enrollment AS FUNCTION f_query_all_active_ptrm () RETURN enrollment_ref; END sb_enrollment; DROP PACKAGE BODY BANI
DROP PACKAGE BANINST1.SB_ENROLLMENT
CREATE OR REPLACE PACKAGE BANINST1.sb_enrollment AS
FUNCTION f_query_all_active_ptrm ()
RETURN enrollment_ref;
END sb_enrollment;
DROP PACKAGE BODY BANINST1.SB_ENROLLMENT
/
CREATE OR REPLACE PACKAGE BODY BANINST1.sb_enrollment AS
FUNCTION f_query_all_active_ptrm ()
RETURN enrollment_ref;
BEGIN
END f_query_all_active_ptrm;
END sb_enrollment;
您不能
更改
包以添加新函数。但是,由于您使用的是CREATE或REPLACE
,因此无需删除包或包体。由于包是单个对象,因此需要替换包规范和包体(因此需要包含所有现有函数和过程)
创建或替换包BANINST1.sb\u注册
作为
函数f\u查询\u所有\u活动\u ptrm()
返回注册参考;
新函数\u函数\u名称
返回号码;
结束某人的入学;
创建或替换包体BANINST1.sb_注册
作为
函数f\u查询\u所有\u活动\u ptrm()
返回注册参考;
开始
结束f_查询\u所有活动\u ptrm;
新函数\u函数\u名称
返回号码
是
开始
返回1;
结束;
结束某人的入学;
您不能更改程序包以添加新功能。但是,由于您使用的是CREATE或REPLACE
,因此无需删除包或包体。由于包是单个对象,因此需要替换包规范和包体(因此需要包含所有现有函数和过程)
创建或替换包BANINST1.sb\u注册
作为
函数f\u查询\u所有\u活动\u ptrm()
返回注册参考;
新函数\u函数\u名称
返回号码;
结束某人的入学;
创建或替换包体BANINST1.sb_注册
作为
函数f\u查询\u所有\u活动\u ptrm()
返回注册参考;
开始
结束f_查询\u所有活动\u ptrm;
新函数\u函数\u名称
返回号码
是
开始
返回1;
结束;
结束某人的入学;
CREATE OR REPLACE PACKAGE BANINST1.sb_enrollment
AS
FUNCTION f_query_all_active_ptrm ()
RETURN enrollment_ref;
FUNCTION new_function_name
RETURN number;
END sb_enrollment;
CREATE OR REPLACE PACKAGE BODY BANINST1.sb_enrollment
AS
FUNCTION f_query_all_active_ptrm ()
RETURN enrollment_ref;
BEGIN
<<some implementation>>
END f_query_all_active_ptrm;
FUNCTION new_function_name
RETURN number
IS
BEGIN
RETURN 1;
END;
END sb_enrollment;