It’s been 177 days since our last release – version 19.4 at the end of December, 2019! Obviously, much has happened since then.

The astute amongst you would have noticed there WAS NOT a version 20.1 release. This was a conscious decision on our part to hit ‘pause’ vs bragging about 20.1 in the middle of a global pandemic.

However, there are bug fixes that we need to get into your hands, and our developers have never stopped working on new features, so we ARE releasing version 20.2, TODAY.

Download Links

What you’re getting, high level

SQL Developer

Probably the biggest thing coming down for version 20.2 is a more flexible PL/SQL Debugger.

DBMS_DEBUG vs JDWP

This just makes a secondary jdbc (or sqlnet) connection to the database to run the debug over, vs JSQP which has the Database itself reach out and open a connection to your client. So no firewall and ACL rules to define. You can imagine this would also be MUCH easier to navigate in a world where your database is running in the Cloud.

Another small, but useful feature – finding stuff in your plans.

Search. Yes, we should have added this years ago.

I don’t want to undersell the BORING stuff. There’s also about 100 bug fixes.

Data Modeler

I don’t have much to say here, although there are also a ton of bug fixes and feature tweaks. I’ll be talking about this more later this Summer.

SQLcl

LOADS of great stuff here. Keyword being ‘load.’

If you like the ‘load’ command, you’ll now have the ability to configure exactly HOW the data is being loaded via two new SET commands.

SET LOAD & SET LOADFORMAT

Image
So I can define how DATEs are to be defined or how large of batch size I’d like.

Even bigger, a brand new command!

OCI
So, so, so many fun demos to build with this!

Liquibase

Our automated change management feature has huge changes as well for version 20.2. You get support for generating HTML docs, doing DIFFs, and also seeing what SQL will run on a rollback via the rollbacksql command.

Here’s a DIFF

Image
How is SCHEMA A looking compared to SCHEMA B?

A note on SQLFORMAT…

ANSICONSOLE or ‘pretty printing’ of SQL Results is now the default.

We added a readme for SQLcl, and THIS is noted, in case you have production scripts relying on the old school formatting option.

If you don’t like this, or MUST HAVE SQL*Plus style reporting, then you’ll want to SET SQLFORMAT to null in your login.sql.

What about ORDS?

ORDS and SQL Developer Web version 20.2 will be available shortly. Just a few more tires to kick.

thatjeffsmith
Author

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

17 Comments

  1. Marcel van Lare Reply

    On this new version, when i doubleclick a materialized view (open) and look at the tab SQL i only see the grant part of the mview definition and not anymore the create materialized view statement. Worked in previous version right.
    When i do edit and go to tab DDL and then click create, i do see the create statement. For now this is my workaround (there are other workarounds also).

    • thatjeffsmith

      20.2, logged in as the owner of the MV, i’m able to get my MV DDL…

      create materialized view "EMPS_DEPTS" (
      "EMPLOYEE_ID",
      "FIRST_NAME",
      "LAST_NAME",
      "SALARY",
      "DEPARTMENT_NAME"
      ) default collation "USING_NLS_COMP"
      segment creation immediate organization heap
      pctfree 10 pctused 40 initrans 1 maxtrans 255 nocompress logging
      storage ( initial 65536 next 1048576 minextents 1 maxextents 2147483645 pctincrease 0 freelists 1 freelist groups 1 buffer_pool
      default flash_cache default cell_flash_cache default )
      tablespace "USERS" cache
      build immediate
      using index
      refresh
      force
      on demand
      using default local rollback segment
      using enforced constraints
      disable on query computation disable query rewrite as
      select EMPLOYEE_ID,
      FIRST_NAME,
      LAST_NAME,
      SALARY,
      DEPARTMENT_NAME
      from EMPLOYEES,
      DEPARTMENTS
      where EMPLOYEES.DEPARTMENT_ID = DEPARTMENTS.DEPARTMENT_ID;

      comment on materialized view "EMPS_DEPTS" is
      'snapshot table for snapshot HR.EMPS_DEPTS';

    • Marcel van Lare

      Hi Jeff,
      I checked on mview statements which where not generated in 20.2 in comparison with 19.4. They are mviews where 19.4 has a comment and 20.2 does not have that:
      — Unable to render MATERIALIZED VIEW DDL for object ….. with DBMS_METADATA attempting internal generator.

      Guess for some syntax in sql an internal generator is used: like mviews with a with as construction.
      Regards, Marcel

  2. Dear Jeff,

    For your information:
    I just encountered the following behavior with the new Data Modeller (20.2.0.167 on Windows 7), Version with JDK included.
    Under “Features” / Database I disabled
    NoSql 19.3.12 and
    Cloud Support
    (since I won’t use either)

    But after that datamodeller.exe failed to start, with the following error-message:
    Product extension oracle.datamodeler could not be loaded. The product cannot start.
    Disabled extensions:
    oracle.sqldeveloper.onsd: Disabled by user
    oracle.sqldeveloper.cloud: Disabled by user
    oracle.datamodeler: Missing dependencies: oracle.sqldeveloper.cloud, oracle.sqldeveloper.onsd

    Seems like ‘he’ knows I’ve disabled it, but he depends on these extensions anyway.

    As stated above, this is just for your information. I’ve removed the “system.settings” and leave these options enabled.

    best regards,
    Thomas

  3. I rarely have problems upgrading releases, but today I get this on my OS X Catalina 10.15.5 box: “SQLDeveloper 20.2.app” can’t be opened because Apple cannot check it for malicious software. This software needs to be updated. Contact the developer for more information.”

    I realize this isn’t necessarily your problem, so just FYI in case you get comments from others. I can wait until it will install for me.

  4. Timothy Gotham Reply

    I cannot get the DBA panel to display on Windows version 20.2. Menu, view, DBA does nothing. No issues with previous versions.

  5. John Peeken Reply

    Hi Jeff,
    Do you know what happened with the Snippets view and the Map view under the View menu in SQL Developer 20.2 ?
    Thanks,
    John Peeken

    • John Peeken

      Hi Jeff,
      Strike my last comment. After bouncing between 19.4 and 20.2 and shutting everything down and then starting up 20.2 now see the Snippets view and Map view.
      John Peeken

  6. What about _finally_ getting that messy code completion helper – which currently isn’t even near 1% of what IntelliSense is for Visual Studio – fixed? It’s neither correctly popping up, matching what I want to insert, etc.

    Besides, what about _finally_, actually moving into 2020 regarding Dark Mode? The current “theming” can be summarized as “look like crap, but allow for dark input area” – which is not only disgusting from an aesthetic/UI point of view, but also from an UX perspective.

    Being new to SQL Developer, I _still_ can’t believe users are still accepting such an awful UI in the year 2015, let alone the current year!

    Seriously, fix this ASAP, Oracle. We developers deserve this!

    • thatjeffsmith

      The completion support – what is missing? Can you share examples?

      You can have your true dark mode.. With a little work –

      See slide #17, I think

  7. Marcel van Lare Reply

    Always looking out for newer versions of sqldeveloper. Nice. Looking out for this:
    Would be nice if it would be possible to have more window instances of ords open.

Reply To John Peeken Cancel Reply