在 Oracle 中,如何更改名称中具有特殊字符的用户?
In Oracle, How do I alter a user that have a special character in the name?
我正在使用 Oracle 11g,我需要解锁特定用户,但该用户在 name.For 中有一个点 假设我的用户名是 'foo.mock'。我知道在用户名中添加这种字符不是一个好习惯,但我不管理数据库。
所以我尝试了
Alter user foo.mock account unlock;
并与
Alter user 'foo.mock' account unlock;
还尝试将名称保存在变量中,然后在 alter query 中使用该变量,但没有任何效果。
知道怎么做吗?
你可以用双引号括起来,但你需要匹配 dba_users
中的大小写,它通常是大写的,但如果它是用引号创建的,则可能不是:
alter user "FOO.MOCK" account unlock;
Read more 关于带引号和不带引号的标识符。
我正在使用 Oracle 11g,我需要解锁特定用户,但该用户在 name.For 中有一个点 假设我的用户名是 'foo.mock'。我知道在用户名中添加这种字符不是一个好习惯,但我不管理数据库。
所以我尝试了
Alter user foo.mock account unlock;
并与
Alter user 'foo.mock' account unlock;
还尝试将名称保存在变量中,然后在 alter query 中使用该变量,但没有任何效果。
知道怎么做吗?
你可以用双引号括起来,但你需要匹配 dba_users
中的大小写,它通常是大写的,但如果它是用引号创建的,则可能不是:
alter user "FOO.MOCK" account unlock;
Read more 关于带引号和不带引号的标识符。