My Oracle Support Banner

Changing Password With oracle.jdbc.newPassword Fails With ORA-988 Instead of ORA-972 When Password Too Long (Doc ID 2752865.1)

Last updated on FEBRUARY 19, 2021

Applies to:

JDBC - Version 12.2.0.0.0 and later
Information in this document applies to any platform.

Symptoms

Version 12.2.0.1 of the JDBC driver introduced functionality to change the password of a database user: "oracle.jdbc.newPassword"

For example:


However, if specifying a new password that exceeds the Oracle-imposed maximum length of 30 characters, the following error is returned:
java.sql.SQLSyntaxErrorException: ORA-00988: missing or invalid password(s)


Comparing this to SQL*Plus:

CASE 1, USING DOUBLE QUOTES
============================
SQL> alter user <USER> identified by "<PASSWORD OVER 30 CHARACTERS>";
 alter user <USER> identified by "<PASSWORD OVER 30 CHARACTERS>"
  *
ERROR at line 1:
ORA-00972: identifier is too long


CASE 2, USING SINGLE QUOTES
============================
SQL> alter user <USER> identified by '<PASSWORD OVER 30 CHARACTERS>';
alter user <USER> identified by '<PASSWORD OVER 30 CHARACTERS>'
  *
ERROR at line 1:
ORA-00988: missing or invalid password(s)


CASE 3, USING NO QUOTES
========================
SQL> alter user <USER> identified by <PASSWORD OVER 30 CHARACTERS>;
alter user <USER> identified by <PASSWORD OVER 30 CHARACTERS>
  *
ERROR at line 1:
ORA-00972: identifier is too long


So, the JDBC driver fails with the same error message as SQL*Plus Case 2 above.


Changes

 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.