Oracle SQL Developer使用不同的模式访问SYS包

时间:2011-04-01 21:26:46

标签: oracle packages database-permissions oracle-sqldeveloper

使用 Oracle SQL Developer 我正在尝试访问由SYS创建的给定包,其中,例如,FOO架构有EXECUTE和{ {1}}权限,实际上执行DEBUG将产生以下输出:

desc

问题是在连接>下无法看到此类包我的连接>的

任何反馈都将得到真诚的感谢。非常感谢。

3 个答案:

答案 0 :(得分:4)

我发现这样做的唯一方法是在My Connection下选择“Other Users”,展开SYS用户,然后转到那里的Packages。

IOW,

Connections > MyConnection > Other Users > SYS > Packages

答案 1 :(得分:1)

那么你可以从你正在尝试使用你正在使用的模式下访问的包创建一个别名,但是你需要拥有该包访问/修改的所有对象的所有权限以及对包的执行权限本身就是一切正常工作

答案 2 :(得分:-1)

这是一个真实的例子吗?也就是说,您是否在SYS模式中创建了一个名为PKG_MY_PACKAGE的包?

这是非常糟糕的做法。 SYS模式是成功运行数据库的关键。在该模式中构建对象会使导出等变得困难。更糟糕的是当我们使用CREATE OR REPLACE来应用我们的代码并覆盖现有的PL / SQL包时。

因此,请为所有代码创建新架构。如果架构需要其他强大的特权,如SYS,则授予它们。但不要污染SYS。这也适用于SYSTEM以及Oracle安装的任何其他模式。

从Oracle提供的状态更改SYS架构是不良做法。