我有一个系统,我将我的功能分成几个不同的包。目前我使用packagename.object的点符号调用函数和过程
我的一些软件包名称(由于公司编码标准)相当长
我可以为包创建别名/同义词以缩短我的代码吗?
ie:而不是pkge_member_utilities.CreateMember,我可以为包创建一个同义词/别名'util',然后在我的代码中使用util.CreateMember
我已经阅读了CREATE SYNONYM的文档但它很混乱,因为它似乎用于执行立即执行,而我想在我的代码中引用同义词
再一次,对于模糊术语的道歉,因为我是从Java背景来的
非常感谢你的时间
麦克
答案 0 :(得分:2)
虽然我同意上述评论,但这主要是为了打败标准。但是,有时标准是可怕的,只要有适当的单元测试,在正确的情况下,有什么危害?
create or replace package long_package_name as
function give_me_zero return number;
end;
/
create or replace package body long_package_name as
function give_me_zero return number is begin return 0; end;
end;
/
create or replace synonym pkg for long_package_name;
-- either works the same
select long_package_name.give_me_zero from dual;
select pkg.give_me_zero from dual;
答案 1 :(得分:-1)
create public synonym util for <owner>.pkge_member_utilities;