我想为我的oracle数据库创建一个递增的粗体脚本。 我想只修改一个程序签名和它的正文,其余部分应保持不变。
如何在不使用create或replace?
重新创建孔包的情况下完成此操作示例
旧包
PROCEDURE LOAD_ITEMS(OUTCURSOR OUT SYS_REFCURSOR);
新包
PROCEDURE LOAD_ITEMS(P_ID IN CHAR, OUTCURSOR OUT SYS_REFCURSOR);
修改
通过增量脚本,我的意思是从先前版本升级到此版本。
我想只修改当前的程序,而不是所有程序。
答案 0 :(得分:19)
如果要更改包规范中的过程,则需要执行
CREATE OR REPLACE
整个包规范和正文已更改代码。
虽然可以使用ALTER PACKAGE
语句重新编译整个包,但
[...]不会更改现有包的声明或定义。要重新声明或重新定义程序包,请使用带有
OR REPLACE
子句的CREATE PACKAGE
或CREATE PACKAGE BODY
语句。