-

SQL engine and PL/SQL functions
A common pattern I see in database code is the use of a PL/SQL package to hold constants to be used throughout the rest of the PL/SQL code base. In most cases, there is nothing wrong with this practice, but once you start incorporating this model into your SQL statements (as opposed to just using Read more
-

The podcast is back for 2023!
Normally I don’t dedicate a post to just a podcast episode, because you can see them all here, but since it is the first for 2023, I thought I’d give it a shout out! First up is the wrap up of my chat with Dom Giles where we cover what is the role of the Read more
-

ORDS upgrades are so easy
Just a quick blog post today showing how easy it was for me to upgrade from ORDS 22.1 to the latest ORDS 22.4. It was just a case of downloading the software, and running it in “install” mode whilst pointing to the existing config directory. (Obviously, for environments more serious than my local PC, I Read more
-

TEMP is a four letter word
Happy New Year to all! With the next long term release (23ai) probably due some time this year, let’s start the new year with a simple change you might need to make in naming once you decide to make the switch past 19c. I discovered this when I was doing a simple demo with external Read more
-

2022 – the year in review
Well, its been quite a year 🙂 Probably the highlight for me, and I’m sure for many others, was the return of face to face events, or just face to face in general. The ability to have regular casual conversations with like minded peers is one of those things that we all took for granted Read more
-

Faster operations with CLOBs
Somewhere around version 9 (maybe before, maybe later…all so long ago 😀) the distinction between CLOB and VARCHAR2 became less defined. This was a good thing because the typical operations you would do with a VARCHAR2, for example, SUBSTR, REPLACE, INSTR and the like, could be used directly against a CLOB datatype without needing to Read more
-

The cost of DBMS_PARALLEL_EXECUTE
I had an inquiry about the performance of DBMS_PARALLEL_EXECUTE today from a customer. Whilst the utility (as the name suggests) is designed to break up a large task into smaller chunks and then run those in parallel, the customer asked what was the overall cost in using the utility compared to not using it at Read more
-

Google-like search for your entire application
I published a video today showing how to use a Text index to pick up search terms from multiple tables to allow a “Google-like” search across your entire application or even your entire database. The video walks through a lot of background on how Text indexes are flexible and can be customised to meet this Read more
-

I did not write this blog post
In fact…no-one wrote this blog post! Here’s a little bit of fun for you. I was doing my normal doom scrolling through Twitter and came across an advertisement that claimed an AI engine could write my blog posts for me! So I went to the site, typed in some keywords and a topic and hit Read more
-

From stateful to stateless PL/SQL
I’ve done a lot of talks mainly around the tremendous performance benefits you can get just by employing a little bit of PL/SQL in the core parts of your applications. This advice has been valid for as long as PL/SQL has existed. And PL/SQL has been around for a long time, and when I say Read more
-

A Security Disaster
There has been a lot of coverage here in Australia recently about one of our popular telco’s getting hacked due to a lapse in security. So I thought I’d share a security horror story that I encountered with a customer recently. I’d love to say that I’m sharing this due to my philanthropic nature but Read more
