Why would I use SQLcl over something else?

History recap: we introduced a new command-line interface for the Oracle Database in 2016. It’s everything you like about SQL*Plus, and everything you didn’t like about SQL*Plus – fixed.

Do you have a minute?

Watch this, then take 10 seconds to consider how YOU might use it.

Sold yet?

Everyday Things, Easier

Just in 50 seconds I showed you:

  1. Object completion
  2. In-line editing
  3. Automatic SQL Formatting (pretty and CSV)

There’s so much more there though. Better takes on DESC, SQL History, new commands like CTAS, DDL. The ability to change your directory for spooling and @ files (cd).

If you’d like a longer take, here’s a 50 minute full presentation on SQLcl I did earlier this year.

Or if you just want to click through some slides right-quick:

Yes, it’s an Official Product

It’s included with your Database license. It’s distributed with the database. And it’d covered by My Oracle Support. We also give you quarterly updates with new features and bug fixes. We also have our own OTN Space Community (message board.)

Enjoy!

Author

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

14 Comments

  1. Hi. Simple question…. How do I set sqlcase? I have searched far and wide and found nothing. Every time I try, I receive this:
    “set sqlc up” is Obsolete.

    I have tried “help set sqlcase” and:
    SQL> help set sqlcase
    SET SQLCASE
    SET SQLC[ASE] {MIX[ED] | LO[WER] | UP[PER]}

    Please advise and THANK YOU in advance.

    • I think it’s a deprecated setting, so help set sqlcase should come back with the same message you see when running set sqlcase up. It’s obsolete – not supported.

  2. Michael J Myers Reply

    Is there any way to get tab-completion in sqlcl to recognize public synonyms? All of our tables are shared via public synonyms, but sqlcl makes me type the schema anyway.

    Having to remember and type schema names completely negates any speed advantage of tab-completion for me. “mi.me” is not quicker than typing “member”.

    Thanks

    • Michael J Myers

      Public synonyms? Or synonyms?

      If I type “SELECT * FROM M[TAB]”, I get a list of schemas – despite the existence of at least 8 public synonyms for tables beginning with the letter “M”.

      Now if I add a private synonym in my schema and type the above, the private synonym appears as an option. The public synonyms still do not appear.

    • Michael J Myers

      I just played with it some more. It seems that I need to type at least 4 letters to get public synonyms. Any less than that shows only matching schema names. Strange.

      Thanks for taking the time to reply.

    • Sure, no problem.

      Even if you see no utility in this feature, I can think of several others that still make the jump worth your time.

  3. Hi Jeff,

    Can you tell me that in sql developer how to set same as Toad of line terminating same as Toad for example press Enter only and code formate is also same as Toad formate because sql developer code formate is very unusable.

    Regards,
    Shahnawaz

  4. The one thing that bugs me is the handling of the start directory in sqlcl.

    I start sqlcl from directory x/y/z and want to work my way interactively through some scripts. But the notion of start directory for sqlcl seems to be some directory in the oracle installation itself.

    What is the most simple way to make sqlcl do what I want here ?

    Tanks for listening and considering !

    Norbert

    • I think you will like the CD command – it affects both looking for and writing out files

      SQL> SHOW sqlpath
      SQLPATH : C:\Users\jdsmith\Desktop\sqldeveloper\sqldeveloper\bin\;.
      SQL> cd c:\users\jdsmith\documents
      SQL> SHOW sqlpath
      SQLPATH : C:\Users\jdsmith\Documents;C:\Users\jdsmith\Desktop\sqldeveloper\sqldeveloper\bin\;.
      SQL>
  5. Hi Jeff,

    I really like Sqlcl, congrats to the developers.
    I still encounter some minor annoyances that wouldn’t be an issue on Sql*Plus like for example:

    SQL> col serial# for 999999
    SP2-0158: unknown COLUMN option “#”

    Am I missing something?

    SQL> show version
    Oracle SQLDeveloper Command-Line (SQLcl) version: 18.2.0.0

    SQL> ! java -version
    java version “1.8.0_181”
    Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
    Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)

Reply To thatjeffsmith Cancel Reply