原理:因此在as sysdba连接数据库后,创建的对象实际上都是生成在sys中的。其他用户也是一样,如果 as sysdba登录,也是作为sys用户登录的。 看以下实验:
SQL> create user strong identified by strong; 用户已创建。 SQL> conn strong/strong@magick as sysdba; 已连接。 SQL> show user; USER 为 "SYS" SQL> create table test(a int); 表已创建。 SQL> select owner from dba_tables where table_name='test'; //从dba_tables中查询某张表(table_name)的所有者(owner)。 未选定行//因为创建表时oracle自动转为大写,所以用小写查询的时候是不存在的; SQL> select owner from dba_tables where table_name='TEST'; OWNER ------------------------------ SYS