Are You Binding Your Oracle DATEs Correctly? I Bet You Aren’t

Oracle database has its ways. In my SQL talks at conferences, I love to confuse people with the following Oracle facts: ... and the answer is, of course: Isn't it horrible to make empty string the same thing as NULL? Please, Oracle... The only actually reasonable slide to follow the previous two is this one: … Continue reading Are You Binding Your Oracle DATEs Correctly? I Bet You Aren’t

Painless Access from Java to PL/SQL Procedures with jOOQ

A procedural language combined with SQL can do miracles in terms of productiveness, performance and expressivity. In this article, we'll see later on, how we can achieve the same with SQL (and PL/SQL) in Java, using jOOQ. But first, a little bit of history... Accessing PL/SQL from Java One of the biggest reasons why Java … Continue reading Painless Access from Java to PL/SQL Procedures with jOOQ

Oracle 12c Goodies: { CROSS | OUTER } APPLY

I can't believe my eyes. Has this been openly communicated by Oracle? I haven't seen too many blog posts on that matter. Apart from introducing the awesome SQL Standard OFFSET .. FETCH clause (just like SQL Server 2012), there seems to be now also { CROSS | OUTER } APPLY in Oracle 12c! Check out the … Continue reading Oracle 12c Goodies: { CROSS | OUTER } APPLY

How to Generate Date Ranges in Oracle SQL

I've just come across an interesting SQL question here on CodeRanch. How to generate date ranges in SQL, given any input date. The question didn't specify the SQL dialect, so let's choose Oracle SQL, which features the awesome CONNECT BY clause. The requirements specify that given any input date: Date ranges span 12 months The … Continue reading How to Generate Date Ranges in Oracle SQL