When I try to open a procedure or package in my Oracle 9i database, I get this message:
ORA-01460 unimplemented or unreasonable conversion requested
Using SQL Developer 220.127.116.11 I have no problem. A query on v$version returns this:
Oracle9i Enterprise Edition Release 18.104.22.168.1 - 64bit Production
PL/SQL Release 22.214.171.124.1 - Production
CORE 126.96.36.199.0 Production
TNS for IBM/AIX RISC System/6000: Version 188.8.131.52.0 - Production
NLSRTL Version 184.108.40.206.0 - Production
Correct - The 12c JDBC driver does NOT support the 9i database. See the Oracle JDBC FAQ
Which version of JDBC drivers support which version of Oracle database?
Please refer to the below table for the Oracle database versions supported by JDBC drivers. Best Practice that we recommend is, JDBC driver version should always be either same as or higher than the Oracle database version being used in order to leverage the latest capabilities of the JDBC driver.
Interoperability Matrix Database 12.1.0.x Database 11.2.0.x Database 11.1.0.x JDBC 12.1.0.x
The 4.1 version of Sql Dev switched to the 12c JDBC driver.
Either upgrade your database or use the 4.0x version of Sql Developer.
right, that's what the other thread says
We have at most 11g databases, so I'll try Ralf Koelling's hack.
Do I miss any feature in SQL Developer 220.127.116.11.59?
That's actually not an easy question to answer, but very probably. For example, the new SQL Statement logging pane had some issues with the older drivers. Also there were at least 5 dozen bugs logged against JDBC drivers shipped with Oracle 10 and 11 that have been fixed for 12c. Probably some were backported to 11.
Also there are new features specific to 12c databases as noted in some blogs...
Thanks Gary for your answer.
I understand that some JDBC bugs will return if I use an old JDBC driver. I can live with that, but is worst to have 2 versions of SQL Developer!!!
So after install InstantClient 18.104.22.168 and configure it on Tools > Preferences > Database Advanced, I got this:
Testing the Instant Client located at C:\Oracle\instantclient_11204
Testing client directory ... OK
Testing loading Oracle JDBC driver ... OK
Testing checking Oracle JDBC driver version ... OK
Driver version: 22.214.171.124.0
Testing testing native OCI library load ... OK
However I still get error ORA-01460 when I try to view a procedure or package on 9i. No problem querying tables
Do you have any idea how to solve this?
There is no real solution for the 4.1.1 / 9i combination. Your only options are to...
1. Revert to 4.0.3
2. Upgrade the DB.
3. Stay with 4.1.1 and 9i, but find the right SQL to create user defined reports to view that DDL such that you do not get the ORA-01460.
I'll work on the last option.
After rebooting my machine, I was able to open procedures and packages in a 9i database.
Please don't ask. It just worked.
Thanks for the feedback.
In fact, this makes sense -- I was wondering why 4.0.3 worked (with a default 126.96.36.199 jdbc driver) but then 4.1.1 did not after downgrading the driver from 188.8.131.52 to 184.108.40.206 (which seems to reports itself as 220.127.116.11). If a restart of the product or even a reboot is what it takes, then great!