Philipp Salvisberg’s Blog

Database-centric development

2021-08-29

Do Not Format Invalid Code in SQL Developer

Introduction What happens when you call the formatter in SQL Developer for invalid code? Until recently SQL Developer tried to format it anyway. This produced strange results in some cases. Starting with SQL Developer version 21.2.0 there is a hidden option to suppress formatting when the code is invalid. What Is Valid […]
2021-07-18

Lightweight Formatter for PL/SQL & SQL

TL;DR Bye bye, heavyweight formatter. Long live the lightweight formatter. Are you using Oracle’s SQL Developer or SQLcl? Then install these settings and press Ctrl-F7 to produce code that conforms to the Trivadis PL/SQL & SQL Coding Style. A compromise between conformity and individuality. Heavyweight Formatter A typical PL/SQL & SQL formatter […]
2021-03-10

Work From Home – First Anniversary

The last time I was on-site at a customer was March 10, 2020. I usually spend about 20-40% of my time working from home. But working exclusively from home is something completely different. A new experience. After a year it’s time for a brief personal retrospection. The Good More at Home Pretty […]
2021-02-28

Connecting via JDBC to the Oracle Cloud

You can connect to an Oracle Autonomous Database in different ways. This is well documented here. It’s a bit different from what we know from on-premises environments. In this blog post, I show the steps to connect to an Autonomous Database from a third-party IDE like DataGrip. From a JDBC perspective, this is […]
2021-01-17

Accessing Snowflake from SQL Developer

My first day of work this year was a training day. As a participant in a “Snowflake Fundamentals” training course. I opted for the four-day, multi-week option so that I would have time to better absorb what I had just learned. Tomorrow is my third day and I plan to write more […]
2020-11-12

Formatter Callback Functions

Introduction In this blog post, I explained how the formatter in SQL Developer works and outlined how you can change the formatter result using Arbori and JavaScript. In this post, I explain what exactly the provided formatter callback functions do. For that, I use simple examples. I produced all results with a […]
2020-11-01

Patching SQL Developer 20.2 with SQLcl’s Formatter

Introduction SQLcl 20.3.0 was released on October 29, 2020. It’s the first time I remember that we have a SQLcl version without the corresponding SQL Developer version. This is a pity because this SQLcl version also contains formatter fixes. And formatting code is something I do more often in the full-blown IDE […]
2020-10-10

Navigation in Large PL/SQL Code

Are you editing large PL/SQL code in SQL Developer? Have you noticed that sometimes you cannot navigate to a declaration anymore? No Ctrl-Click under Windows. No Command-Click under macOS. In this blog post, I explain the reason and how to fix that in SQL Developer 20.2. What Is Large? Usually, we define […]
2020-09-28

Disable Formatter for Code Sections in SQL Developer

In this blog post, I show how you can disable the formatter for some parts of your code. IntelliJ IDEA and the Eclipse IDE use tags in comments to identify sections of code that must not be formatted. By default, these tags are `@formatter:off` and `@formatter:on`. Example When I format this code […]
2020-09-07

Highlight Hints in SQL Developer

Introduction In this blog post, I explain how you can configure your SQL Developer to highlight hints and distinguish them from ordinary comments. The SQL Language Reference for Oracle Database 19c defines hints as follows: Hints are comments in a SQL statement that pass instructions to the Oracle Database optimizer. The optimizer […]