ORA-00922 by chaning the password (SetPassword)

dtumbov

Member²
Hi there,

I'm getting ORA-00922 by changing the password when the Oracle username contains a dot,for example "a.miller". If the username doesn't contain a dot, then the password can be changed successfully.
Another analyse has showed, that this problem was not present in Oracle 9iR2, but only in 10gR2.

I've switched on tracing, and here is the extraction of the trace file:
=====================
PARSE ERROR #1:len=40 dep=0 uid=116 oct=43 lid=116 tim=6192651395 err=922
alter user d.tumbov ident ...
WAIT #1: nam='SQL*Net break/reset to client' ela= 5 driver id=1413697536 break?=1 p3=0 obj#=46531 tim=6192653246
WAIT #1: nam='SQL*Net break/reset to client' ela= 401 driver id=1413697536 break?=0 p3=0 obj#=46531 tim=6192653685
WAIT #1: nam='SQL*Net message to client' ela= 2 driver id=1413697536 #bytes=1 p3=0 obj#=46531 tim=6192653718
*** 2008-07-22 15:26:51.707
WAIT #1: nam='SQL*Net message from client' ela= 267206468 driver id=1413697536 #bytes=1 p3=0 obj#=46531 tim=6459860237
=====================

I strongly assume that the problem is, that there are no quotation marks around the username in "alter user d.tumbov ident ...". I've tried to change the DOA source code in Oracle.pas, the procedure SetPassword:
from "DoSQL('alter user ' + FUsername + ' identified by ' + NewPassword, True)" to "DoSQL('alter user "' + uppercase(FUsername) + '" identified by ' + NewPassword, True)"
but the "alter user" command in the trace file hasn't changed.

I'm on the 10g database (10.2.0.3 and 10.2.0.4), DOA 3.4.3 & Delphi 5.

Any suggestions?

Regards,
Dimce
 
On an Oracle Client version 8.0 or later, the OCIPasswordChange function is used, and not the "alter user" command. You could try to modify that.
 
Hi Marco,

thank you for your suggestion.

I've tried to change the call to OCIPasswordChange in the way I've put the quotation marks around the username, but it doesn't work either.

If you mean about the changes in the function OCIPasswordChange, then I couldn't find it. Could you give me some more informations?

Kind Regards,
Dimce
 
Back
Top