2014-07-01 36 views
0

我有一个包含多个包和某些类型的oracle数据库。有这样定义使用全局类型而不是相同名称的本地子类型

create or replace type my_type as table of varchar2(4000) 

,然后进入pkg_machines型有

subtype my_type is varchar2(4000) 

现在,我没有写数据库,并在分析错误,我发现了几个包确实使用pkg_machines.my_type,但pkg_machines需要同时使用本地和全球。

想到做到这一点的唯一可能的方式是更改子类型的名称并重构每个使用它的包,但这意味着要浪费大量的时间来重构数百个包。

我的问题是:有没有办法告诉程序引用全局类型my_type而不是定义的子类型?

回答

1

当您想要使用全局名称完全限定为schema_name.my_type。模式名称通常与创建类型时登录到数据库的用户相同。

分享和享受。

相关问题