cancel
Showing results for 
Search instead for 
Did you mean: 

Unable to Alter the user

Former Member
0 Kudos

Hi All,

I am trying to alter a user but unable to do it.

When i type the following command

SQL> select username from dba_users where default_tablespace='_$deleted$6$0';

USERNAME

-


OM?V

M?DO

KRB?

HE?K

CHM?

ALK?

TOS?

VI?K

?SLI

9 rows selected.

and when i execute

SQL> alter user "OM?V" default tablespace PROTASTAB;

alter user "OM?V" default tablespace PROTASTAB

*

ERROR at line 1:

ORA-01918: user 'OM?V' does not exist

SQL> alter user 'OM?V' default tablespace PROTASTAB;

alter user 'OM?V' default tablespace PROTASTAB

*

ERROR at line 1:

ORA-01935: missing user or role name

SQL> alter user OM?V default tablespace PROTASTAB;

alter user OM?V default tablespace PROTASTAB

*

ERROR at line 1:

ORA-00911: invalid character

and i am not sure how to fix it. Please advise.

Regards,

-Addi-

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

I doubt that there is really a '?' in the usernames. It might be a placeholder for a character that cannot be displayed in your sqlplus window.

To check this idea, try:

select username, dump(username,16) from dba_users where ...

And out of interest:

How did you create these users in the first place ??

regards

Former Member
0 Kudos

Hi,

I am not sure what is placeholder and who created these entries, But i got this response.

SQL> select username , dump(username,16) from dba_users where default_tablespace='_$deleted$6$0';

USERNAME

-


DUMP(USERNAME,16)

-


OM?V

Typ=1 Len=4: 4f,4d,d8,56

M?DO

Typ=1 Len=4: 4d,c5,44,4f

KRB?

Typ=1 Len=4: 4b,52,42,d8

USERNAME

-


DUMP(USERNAME,16)

-


HE?K

Typ=1 Len=4: 48,45,d8,4b

CHM?

Typ=1 Len=4: 43,48,4d,d8

ALK?

Typ=1 Len=4: 41,4c,4b,c5

USERNAME

-


DUMP(USERNAME,16)

-


TOS?

Typ=1 Len=4: 54,4f,53,c6

VI?K

Typ=1 Len=4: 56,49,d8,4b

?SLI

Typ=1 Len=4: c5,53,4c,49

Does it make sense?

-Addi-

Former Member
0 Kudos

Addi,

thanks; this output shows that my guess was correct.

dump(username,16) will give the hex code of the bytes in the username.

have a look at your ascii table.

For example take this:

OM?V Typ=1 Len=4: 4f,4d,d8,56

O 4f

M 4d

V 56

d8 however is not 7-bit ascii, it may be a character from your national character set.

And you will see that '?' is representing quite different hex values here:

d8 c5 c6

But what can you do here?

Well, first I would look if there is an Oracle client on some machine in your network that is able to show the correct usernames, without '?'.

From there it should be easy to alter these users.

Besides that, what is the character set of your database?

If it is somehow related to Latin-1, then these characters seem to be from Northern Europe;

have look at http://en.wikipedia.org/wiki/Latin-1

c5 Å

c6 Æ

d8 Ø

hope this helps

PS:

You might simply try and cut&paste this:

alter user "OMØV" default tablespace PROTASTAB;

Edited by: Joe Bo. on Aug 11, 2010 8:25 AM

Former Member
0 Kudos

Addi,

Try with this

ALTER USER PRATEEK DEFAULT TABLESPACE PSAPXXXX QUOTA UNLIMITED ON

Hope it will work !