
[英]Oracle - “Sql developer” database copy utility - Src/tgt different schema
[英]Oracle SQL Developer accessing SYS packages with a different schema
我正在使用Oracle SQL Developer尝试访问由SYS
创建的给定包,其中FOO模式具有EXECUTE
和DEBUG
权限,实际上,执行desc
会产生以下输出:
desc SYS.PKG_MY_PACKAGE
PROCEDURE Argument Name Type IN/OUT Default
-------------- ------------- -------- ------ -------
PRC_MY_PROCESS P_MY_ARGUMENT VARCHAR2 IN unknown
问题是该软件包在“ 连接” >“ 我的连接” >“ 软件包”下不可见。
任何反馈将由衷的感谢。 在此先感谢。
我发现这样做的唯一方法是在“我的连接”下选择“其他用户”,展开SYS用户,然后转到那里的“包”。
IOW,
Connections > MyConnection > Other Users > SYS > Packages
好吧,您可以从正在使用的模式下尝试访问的程序包创建别名开始,但是您将需要对该程序包正在访问/修改的所有对象都具有所有权限,并对所有程序包本身具有执行权限正常工作
这是一个真实的例子吗? 也就是说,您PKG_MY_PACKAGE
在SYS模式中创建了一个名为PKG_MY_PACKAGE
的软件包?
这是非常不好的做法。 SYS模式是数据库成功运行的关键。 在该架构中构建对象可能会使导出等工作变得困难。 更糟糕的是,当我们使用CREATE OR REPLACE来应用代码并覆盖现有的PL / SQL包时。
因此,请为所有代码创建新的架构。 如果架构需要其他强大的特权(例如SYS),请授予它们。 但是不要污染SYS。 这也适用于SYSTEM以及Oracle安装的所有其他模式。
从Oracle提供的状态更改SYS模式是不好的做法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.