-

Unleashing Skills onto my database
You may have already seen that thanks to Kris Rice, we now have a baseline set of Oracle skills available for your favourite AI tools. Check out the skills repo here and if you have any experience with the Oracle database, I encourage you to examine the details and offer any feedback so that this… Read more
-

SQL skills just got MORE important
There seems to be a school of thought in the tech community that a robust knowledge SQL is now optional. After all, with modern AI tools able to generate SQL from plain English, it seems “obvious” that we have abstracted away the need to understand the language itself. My thoughts are that the exact opposite… Read more
-

GROUP BY ALL – Is it ALL you ever need?
You have probably seen a couple of cool GROUP BY features that came with Oracle Database 26ai. You can check out the short video below but since you’re on a blog, here’s the TL;DR – You can use the column alias in your GROUP BY, to avoid the annoying duplication of code Old-school way SQL>… Read more
-
Voxxed Days Zurich
That was my first experience at a Voxxed Days event. Obviously I like Oracle-focussed events, but that can give you a blinkered view of the world. There’s a lot of Java devs out there, and finding out what they are doing, how they are working etc I think is exceptionally valuable. It was a… Read more
-

Thank you after 21 years
Throughout my long history of working with the Oracle Database, there are some things that often just take for granted, on the assumption that they have always been present. But there was a time in the Oracle landscape where we used to have a whole bunch of weird, complicated solutions to the task of synthesising… Read more
-

Bind Variables – Worse than you were told
Many of you probably know Martin Bach. He’s a colleague here at Oracle although we’ve both been good mates in the Oracle community long before either of us joined Oracle. But here’s the issue. Martin is just a genuinely nice guy and always takes an optimistic glass-half-full view to the world. So recently when he… Read more
-

Where is my TNSPING?
I’m a big fan of the “instantclient” solution to Oracle connectivity. No more calls to “runInstaller”, no registry files on Windows, it is just download-unzip-go. That makes installation a breeze, it makes upgrading a breeze. In my view, the experience is all positive. However, I’ve had people lament the omission of the “tnsping” command in… Read more
-

Generate INSERTs the new 26ai way
Six years ago(!) I did an Office Hours session where I demonstrated a little routine that would let you generate more efficient INSERTs by converting a standard INSERT-VALUES into a multi-table insert (INSERT ALL) in order to reduce the number of network trips. Of course that is a moot point with 26ai because we have… Read more
-

INSERT-VALUES – Bigger is NOT always Better!
One of the super cool features in 26ai is the ability to extend the VALUES clause in your INSERT statements to allow multiple rows per execution. If you’re unfamiliar with that, here’s a quick video I did on this a while back This can be useful not just for brevity but also for performance, especially… Read more
-

SQL Macros make so many things easier
Addenda Feb 20: I had one colleague point out a mistake, then another colleague point out something else, then I thought about it a little and found other problems…sigh. So if you grabbed the original version of this function, please chuck it out and use the fresh one 🙂 The more I use SQL Macros,… Read more
-

26ai Quick Tip for Database Links
It seems an odd thing that so many facilities on the cloud environment take advantage of the concept of stored database credentials when it comes to authenticating/authorising access to those facilities, but a database link on your on-premise database typically will still require the username and password hard-coded as part of the DDL in the… Read more
-

Datatype Discipline – Even more so in 26ai
I know … I know … I probably sound like a broken record. As I scroll back through my blog archives, I see myself continuously bleating on about using data types carefully in the database. But rest assured – I ain’t done! Yes, I’m back with another warning about taking care when mixing and matching… Read more