ORA-28553: pass-through SQL: invalid bind-variable position
Cause : A pass-through SQL function referring to the position of a bind variable in the currently-parsed SQL statement supplied an invalid bind-variable position. Valid values are 1 through n, where n is the number of bind-variable place-holders in the SQL text.
Action - How to fix it : DBA Scripts :: www.high-oracle.com/scripts
Verify that the bind-variable position parameter is in the correct range to represent a place-holder in the SQL text. Confirm that the SQL text uses the correct syntax for a bind-variable place-holder, as required by the non-Oracle system.
Well, the reason for above error is that i have taken the above script from a 11g database and running it on 10g database. 11g has bring some changes in password management. Below code is executed on 11g and user created successfully, which is expected result.