So version v4.2 has been out for Early Adopter testing and feedback since September.

We’re still doing work on those new features and improvments, and will also be adding additional features and tweaks in a 2nd Early Adopter update, stay tuned.

We’re of course also fixing bugs!

You still have time to make a positive impact on v4.2 – so please share your 2 or even 3 cents.

Based on feedback, some tweaks to look forward too…

More/Better Plans

All of the plan columns should be avail for display now.
All of the plan columns should be avail for display now.

More stuff coming here, stay tuned.

Complete Real Time SQL Monitoring Reports

Everything you expect and NEED to tune/diagnose your SQL problems will be there.
Everything you expect and NEED to tune/diagnose your SQL problems will be there.

Formatting Stuff

We’ve implemented TONS of formatter bug fixes, and tweaked the preferences to give you what you’re asking for. Please, please, please keep sharing your code samples and bugs.

More alignment options for example.
More alignment options for example.

Code Outlines

Navigating AND understanding your SQL and PL/SQL code blocks should get even easier.

‘Classic’ Mode…

See, click, navigate your code...
See, click, navigate your code…

‘Advanced’ Mode…

Remember diagramming your sentences in 5th grade English class?
Remember diagramming your sentences in 5th grade English class?

And of course more stuff…

More and better features, EASIER access to the Oracle Cloud – stay tuned!


I'm a Distinguished Product Manager at Oracle. My mission is to help you and your company be more efficient with our database tools.


  1. Version
    If you run a script that retrieve more than 5000 lines, you can change your preference in Tools/Preferences/Worksheet and increase “Max Rows to print in a script” to 1000000 for instance.
    This works correctly when you run the script after your change this parameter. But, if you exit from SqlDevloper and restart it, the 1000000 is shown in the preferences, but the script fails to produce more than 5000 lines. To make it work, you have to change the 1000000 parameter to 1000001 for instance and rerun the script.
    Did you experience this bug ?

  2. Hi,
    On 4.2 I have this statement formatted like this, witch extra line breaks. Is it possible not to have breaks? This is simple statement and I do not like have it on three lines.
    Also, are you guys updating the product itself, if I download the 4.2 version again, will it contain the latest fixes?

    TO some_user;

    • Hi, this one is left with no reply. Could you let me know if you can reproduce?

    • Sure I can reproduce, the bigger question is if we can manage not to do that w/o creating a new option. It should be the default behavior to not have a line break there.

  3. Ravi Abram Reply

    Formatter add too much space on single line comments. And keeps adding more if formatter is invoked!

    • you gotta provide a sample!


      select * from hr.employee
      -- this is a comment
      where salary > 2500

      -- this is a comment
      salary > 2500

    • Ravi Abram

      I cleaned up my 4.2 installation, including everything in appdata.

      Re-download of 4.2 and opened executable. It asked me whether I want to import settings from previous installation (4.1.5). I said yes. Now formatting your sql gives me this:

      — this is a comment

      salary > 2500;

    • Ravi Abram

      Looks likes the formatter option on Line Breaks,
      “Before line comments” is unchecked, so it is adding a line break after comment.

      There is no option that says do not put line breaks before or after line comments.

    • And? Did you check your formatting settings?

      I don’t see it doing that for me, but check your line break formatting settings.

    • Ravi Abram

      I did and in preferences:

      is the only setting. I am running 64bit oracle on a windows 10 machine. If remove the blank line in SQL above, and re-format it again adds an extra blank line.

    • Ravi Abram

      value n=”breakBeforeComment” v=”false”

  4. Can 4.2 reconnect a non-shared Connection?

    Working via VPN, I get reset every so often, and all my non-shared connections are broken – shared ones are fixed by the Reconnect option, but is there a solution for non-Shared apart from pasting the code into a new window?

    • I have same problem with VPN connection and lost database connection.

  5. Tim Hodson Reply

    I’m trying to get SQL Developer 4.2 going on my linux laptop with hidpi screen. I gather that java only plays nicely with hidpi from version 9; is there any chance that support for java 9 might be added? Right now with java 8, SQL Developer is mostly unusable: even though I have convinced the fonts to be big, all icons are tiny and data table sizing is also well off. Thanks.

    • Tim Hodson

      When I try to run it using Oracle Java 9, I get an error:

      -Xbootclasspath/p is no longer a supported option.

      If it, in principle, could work then I might just have a little dig in. Any pointers welcome! 😉

    • Tim Hodson

      I went into the ide.conf file in the SQL Developer configuration and tweaked a few lines referencing JDK9, and got a lot further: the splash screen showed (the right size) and my hopes were raised. Then, sadly, an error was thrown:

      java.lang.SecurityException: setContextClassLoader
      at jdk.internal.misc.InnocuousThread.setContextClassLoader(java.base@9-ea/ (etc)

      If these issues could be ironed out as part of this Early Adopter version, that would be truly marvellous!

    • Alessandro

      When I run it with Jdk9 on my Debian laptop it says:

      java.lang.reflect.InaccessibleObjectException: Unable to make field transient accessible: module java.base does not “opens” to unnamed module @6df97b55
      at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(
      at java.base/java.lang.reflect.Field.checkCanSetAccessible(
      at java.base/java.lang.reflect.Field.setAccessible(
      at org.netbeans.ProxyURLStreamHandlerFactory.register(
      at org.netbeans.JarClassLoader.(
      at org.netbeans.MainImpl.execute(
      at org.netbeans.MainImpl.main(
      at org.netbeans.Main.main(
      at oracle.ide.osgi.boot.OracleIdeLauncher.launchNbMain(
      at oracle.ide.osgi.boot.OracleIdeLauncher.main(

    • 2 things – we don’t support Java 9 yet – but it should work
      – we don’t support openjdk

  6. Graeme King Reply

    Is there a way to bundle a standard set of connections (xml file) so that they are pre-defined when we push the product to a new user?

    • Graeme King

      I guess just bundle it and ask the user to import?

    • if you drop the file(s) into the right directories, the app should just see and use them

      you won’t be able to include passwords, but you should be able to get the connections themselves over OK

    • Graeme King

      Yeah, where do we place them in the product folder structure?

      Assuming when we push out a new install there is no users\appdata folder (since the user has never used/ran it) for us to drop it in?

    • you create it for them, the directory that is

      I’m pretty sure that’s what other customers are doing

      the other thing you could do is export the connections and put them on a share and have users import them – but I don’t like that idea for security reasons

    • Graeme King

      you mean create something like this?
      C:\Users\%USERNAME%AppData\Roaming\SQL Developer\system4.\o.jdeveloper.db.connection.

      OK – that isn’t pretty and we’ll have to maintain it every time a new version is released.

      I agree about the security risk. Talking of which I’ve never understood why the TNSNAMES.ORA is not encrypted by default. That file is a hackers dream.

  7. Graeme King Reply

    Looks great. Thank you.

    Why do you bundle the JDK and not just the JRE? I just wondered.

    • Graeme King

      Thanks. Makes perfect sense.

      Maintaining a secure version of Java is a total nightmare. And we used to think Windows DLLs were bad. Java is even worse.

      Will SQL Developer find the JAVA_HOME variable and use that (assuming that the one you ship is discovered to be vulnerable and we later want to switch?)

    • no, it sets the java home in a product.conf file in the windows AppData directory. if your java gets updated, you need to update that file

    • Graeme King

      Thanks. I’ll add that to the list 🙂

  8. I have and one day I could not see the tool bar icons underneath the File Edit View etc menu. I did View, Toolbars, Main, checked, unchecked and it didn’t make any differrence. Today I can see the icons.

  9. Larry Hopper Reply

    Hi Jeff. It would be helpful if the file open dialog would remember the file type selection from use to use. Thanks.

  10. Can we get the Container Database node renamed to the Pluggable Databases node in the DBA tab for Container Databases? (Note the S at the end of the Databases… It should be there.)

Write A Comment