First, the appearance of symptoms
1, using Sqlplus connection Normal
2, C # Use 10g odp.net connection, report the above error
Second, the reason
1, oracle11g before the password is case-insensitive, starting from 11G default password case-sensitive
2, the use of 10G odp.net, will automatically convert the password into uppercase
Iii. Solutions
1. Enclose the password in the connection string with quotation marks so that the password does not turn into uppercase
2. Switch to 11G Client
3. Modify the database to disable case sensitive mode: ALTER SYSTEM SET Sec_case_sensitive_logon = FALSE
Because my connection string is written in an XML file, the "quotes" in the XML file need to be escaped and now provide the usual escape characters in the XML:
< |
< |
Less than sign |
> |
> |
Greater than sign |
& |
& |
And |
' |
‘ |
Single quotation marks |
" |
" |
Double quotes
|
ORACLE10GODP Connection 11G database, the ORA-1017 username/password is invalid; Issue with Login denied