2015-05-18 39 views
-1

我的问题是,当我创建一个对象时,它总是存储在sys模式中。通常,当您不指定模式时,应该在当前模式中创建对象。我正在使用toad 12,并且选项卡当前模式设置正确。为什么在sys模式中创建对象?

我做错了什么?任何想法?。

+5

您可能正在登录'as sysdba' - 不要那样做 – thatjeffsmith

+0

谢谢@thatjeffsmith,那就是问题所在。 – Aramillo

+0

只有几次您应该使用SYSDBA角色登录SYS以及任何帐户 - 执行数据库维护工作,升级,关闭,恢复等。 在12c中,我们引入了新角色,如SYSBACKUP,以允许管理员无需登录即可使用SYSDBA – thatjeffsmith

回答

3

当您使用'AS SYSDBA'登录时 - 会话的架构上下文被设置为SYS,而不管是谁登录为。

Docs

当您使用SYSDBA或SYSOPER权限进行连接,则使用默认的模式连接,未与通常与您的用户名关联的模式。对于SYSDBA,此模式是SYS;对于SYSOPER,模式是PUBLIC。

这是更好的做法做这样的事情进行备份或关闭数据库或进行升级时只以SYSDBA使用。

相关问题