日期:2014-05-16  浏览次数:20426 次

oracle更改用户名
更改oracle的用户名

oracle版本: oracle10g

以前都是都该oracle用户的属性信息,如密码等什么的,今天就来把用户名给改了。

今天也是遇到一个需求,要导入一个用户的新数据,但还要保留原有用户。以前本人
确实没有听说过可以更改用户名的,今天就来修改一下

查询要更改的用户名


SQL> select user#,name,password from user$ where name ='TICKETS';

     USER# NAME                           PASSWORD
---------- ------------------------------ ------------------------------
        78 TICKETS                        21EDA78F89D6FACD


更改用户名

SQL> update  user$ set name='TICKETS_BAK' where user#=78;

1 row updated.

SQL> commit;

Commit complete.


再创建一个同样的用户名

SQL> create user tickets identified by "123456"
  2  default tablespace yytickets
  3  temporary tablespace temp;
create user tickets identified by "123456"
            *
ERROR at line 1:
ORA-01920: user name 'TICKETS' conflicts with another user or role name


提示用户冲突!!

SQL> alter system checkpoint;    ----强制写入数据文件

System altered.

SQL> alter system flush shared_pool;  ----清楚缓存数据字典信息,强制oracle读实际数据(即更改后的数据)

System altered.


再创建相同的用户

SQL> create user tickets identified by "123456"
  2  default tablespace yytickets
  3  temporary tablespace temp;

User created.

SQL> grant connect,resource to tickets;

Grant succeeded.

SQL> commit;

Commit complete.

又知道一个内对我来说的新内容啊


----end-----