更改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.