Sign in

Chris Saxon

@chrisrsaxon.bsky.social
694 followers 35 following 302 posts

Oracle Developer Advocate for SQL. Lover of quizzes and games of all kinds. Any views expressed belong to me. chrissaxon.co.uk

PostsRepliesMedia
Reposted by Chris Saxon
Mike Dietrich @mikedietrichde.com · 25/09/2026
Oracle Database 19c is supported on OL/RHEL 10 Many of you did wait for this - and since (I think) two weeks it is official. Oracle Database 19c is supported on OL/RHEL 10. Furthermore, I am going to show you how to find the certifications for Oracle AI Database 26ai since your search attempts may…
mikedietrichde.com
Oracle Database 19c is supported on OL/RHEL 10
Many of you did wait for this - and since (I think) two weeks it is official. Oracle Database 19c is supported on OL/RHEL 10. Furthermore, I am going to show you how to find the certifications for Oracle AI Database 26ai since your search attempts may lead to different results depending on the filters you use. How can you look up certification information?
077
Reposted by Chris Saxon
Tim Hall @oraclebase.bsky.social · 23/09/2026
Joel Kallman Day 2026 : Announcement oracle-base.com/blog/2026/09... #JoelKallmanDay @oracleace @OracleDevs @OracleDatabase @OracleREST @OracleAPEX #orclapex
066
Reposted by Chris Saxon
Mike Dietrich @mikedietrichde.com · 21/09/2026
Patching recommendations: Which route is the best? RUs, MRPs, n-1?? Be aware, this is a longer Monday blog post. Upfront, I am not the master of patching. And I clearly see that many of you struggle with the current situation. Not only regarding Oracle software but I guess, this extends to almost…
mikedietrichde.com
Patching recommendations: Which route is the best? RUs, MRPs, n-1??
Be aware, this is a longer Monday blog post. Upfront, I am not the master of patching. And I clearly see that many of you struggle with the current situation. Not only regarding Oracle software but I guess, this extends to almost every software or OS. Since I get asked almost daily about the ideal approach, and since we discuss these topics internally across the tech teams as well, I thought I would share here my personal…
043
Chris Saxon @chrisrsaxon.bsky.social · 16/09/2026
Ask TOM Live has been running over 8 years now! That's nearly 100 sessions covering Oracle #SQL I've hosted - most of which included live demos As requested by an attendee yesterday I've uploaded all my scripts for past sessions to GitHub Get them at: github.com/ChrisSaxonOr...
github.com
GitHub - ChrisSaxonOra/office-hours: Office Hours scripts
Office Hours scripts. Contribute to ChrisSaxonOra/office-hours development by creating an account on GitHub.
053
Reposted by Chris Saxon
Gerald Venzl @gvenzl.bsky.social · 31/08/2026
Oracle AI Database 23.26.3 Free multi-platform images now available on gvenzl/oracle-free Oracle AI Database 23.26.3 Free multi-platform images are now available on container registries docker.io/gvenzl/oracle-free and ghcr.io/gvenzl/oracle-free. With this release, 23.26.1 images have now gone…
geraldonit.com
Oracle AI Database 23.26.3 Free multi-platform images now available on gvenzl/oracle-free
Oracle AI Database 23.26.3 Free multi-platform images are now available on container registries docker.io/gvenzl/oracle-free and ghcr.io/gvenzl/oracle-free. With this release, 23.26.1 images have now gone into Unsupported. See the support matrix for more information. If you want to see what’s in 23.26.3, check out the New Features Guide. While there is not too much new in this Release Update for Developers, take note of DATEADD(), a nice little declarative helper function for datetime additions.
161
Chris Saxon @chrisrsaxon.bsky.social · 19/08/2026
Want to know how assertions checks data meet the constraint in Oracle AI Database? And what - if anything - you need to do to make this faster? My latest post covers - The NOVALIDATE state - Parallel query to validate existing data - Indexes on assertion columns blogs.oracle.com/sql/how-to-o...
Assertion validation process flow chart
020
Chris Saxon @chrisrsaxon.bsky.social · 10/08/2026
Date logic can be fiddly, particularly with fiscal year calculations Oracle #SQL simplifies this with new calendaring functions, DATEADD, and DATEDIFF in recent releases See how they work in the recording from my last Ask TOM Live www.youtube.com/watch?v=RgJp...
youtube.com
Working with JSON and Dates in Oracle AI Database 26ai
YouTube video by Oracle Developers
000
Reposted by Chris Saxon
Connor McDonald on Database and SQL @connormcd.bsky.social · 29/07/2026
Just a reminder that if you're still using the old SQL Developer desktop version, you should 1) upgrade to 26.2 to pick up security fixies 2) look at migrating to the VS Code extension version of the product
021
Chris Saxon @chrisrsaxon.bsky.social · 22/07/2026
There's lots of security fixes in Oracle AI Database 23.26.3 I strongly recommend you patch soon to keep your data safe! There's also a new #SQL function for you to play with when you do DATEADD ( <unit>, <value>, <datetime> ) Use this to add/subtract units from years down to microseconds
DATEADD (23.26.3)

Add or subtract time units from years down to nanoseconds from datetime values

Examples using this to add/subtract units
010
Chris Saxon @chrisrsaxon.bsky.social · 15/07/2026
We've released an updated version of the SQL keyword search on Oracle Dev Gym As a clue, there's a statement at the top that has placeholders (????) for the keywords you need to find Try it at devgym.oracle.com/pls/apex/f?p... and share your thoughts!
Find the SQL keywords in the grid that complete the statement shown:

???? * ???? hudson_river ???? ???? lake_erie ???? ( canal ) ???? engineer = 'Benjamin Wright'
021
Chris Saxon @chrisrsaxon.bsky.social · 10/07/2026
A bit of Friday fun: can you find the 10 #SQL keywords hidden in the grid? It's a new quiz type we're trying out on Oracle Dev Gym The keywords can be horizontal, vertical or diagonal; forwards or backwards Try it at devgym.oracle.com/pls/apex/f?p... How did you get on? Can you find all 10?
SQL Wordsearch

Can you find the 10 SQL keywords hidden in the grid?
100
Chris Saxon @chrisrsaxon.bsky.social · 06/07/2026
Congrats to the June Weekly DB Dev Gym winners: 1 Rakesh Dadhich 2 Stelios Vlasopoulos 3 Ivan Celerin And the winners for Q2: 1 _tiki_4_ 2 Stelios Vlasopoulos 3 mentzel.iudith Well done to all who played Think you know Oracle #SQL better? Join the fun at devgym.oracle.com/pls/apex/f?p...
static.klipy.com
Minion Congrats
Alt: Minion Congrats
011
Chris Saxon @chrisrsaxon.bsky.social · 01/07/2026
We've got a new look homepage on Oracle Dev Gym The aim is to simplify and make it easier to get started quizzing Check it out at devgym.oracle.com/pls/apex/f?p... We'd love to hear what you think!
New Oracle Dev Gym homepage
131
Chris Saxon @chrisrsaxon.bsky.social · 25/06/2026
Want to ensure at least one child row for every parent in 1:M relationships? You can do this with A foreign key from parent -> child Assertions Assertions express the rule with simple #SQL FKs are still good if there's a primary child row for each parent blogs.oracle.com/sql/guarante...
Example assertion ensuring there's at least one child row for every row in the parent table.
030
Chris Saxon @chrisrsaxon.bsky.social · 25/06/2026
Slapping a surrogate primary key on every table can be tempting But as Markus shows, there are performance and functional benefits to thinking about and structuring your PKs more carefully
020
Chris Saxon @chrisrsaxon.bsky.social · 08/06/2026
Congrats to the top 3 in Oracle Dev Gym's weekly database quiz for May 1st _tiki_4_ 🥇 2nd mentzel.iudith 🥈 3rd Andrey Zaytsev 🥉 Thanks to all who took part and also quiz authors @kibeha.dk and Anthony Harper Full rankings at devgym.oracle.com/pls/apex/f?p...
021
Reposted by Chris Saxon
Gerald Venzl @gvenzl.bsky.social · 02/06/2026
Read what's new for #developers in #Oracle #AI #Database 23.26.1
geraldonit.com
What’s new for Developers in Oracle AI Database 23.26.1
For more information on what’s new in Oracle AI Database 23.26.0, see: What's new for Developers in Oracle AI Database 23.26.0 This release introduces new SQL constructs, new functions, and extensions to existing functionality, making analytic SQL cleaner, data integrity even better, and SQL syntax easier. What follows are my favorite features of this release.
011
Reposted by Chris Saxon
Gerald Venzl @gvenzl.bsky.social · 31/05/2026
Just updated my #Oracle #AI #Database container images to 23.26.2 With it comes a brand new #SQL join type "JOIN TO ONE"!
geraldonit.com
Oracle AI Database 23.26.2 Free multi-platform images now available on gvenzl/oracle-free
Oracle AI Database 23.26.2 Free multi-platform images are now available on container registries docker.io/gvenzl/oracle-free and ghcr.io/gvenzl/oracle-free. With this release, 23.26.0 images have now gone into Unsupported. See the support matrix for more information. If you want to see what's in 23.26.2, check out the New Features Guide. My personal favorite, probably because I was directly involved in this new invention, is a brand new join type JOIN TO ONE.
131
Reposted by Chris Saxon
Martin Bach @martindba.bsky.social · 26/05/2026
Hardcoding passwords into scripts always feels like a temporary solution… …right until it ends up in Git 😅 I wrote a short post on handling secrets more safely in SQLcl projects and completing admin tasks without creating a security nightmare: martincarstenbach.com/2026/05/25/c...
martincarstenbach.com
Handling Secrets Safely in SQLcl Projects Deployments
TL;DR: for security reasons you cannot possibly store sensitive information in Git. There have been too many occasions where API keys, passwords, or other configuration data has been exposed. Abuse…
052
Chris Saxon @chrisrsaxon.bsky.social · 22/05/2026
If two transactions try to change the same rows concurrently, one must wait Maybe a loooong time! A timeout would be handy to avoid this Do this from Oracle AI Database 23.26.2 with the wait clause for all DML: NOWAIT WAIT n [ [MILLI|MICRO]SECONDS ] WAIT FOREVER blogs.oracle.com/sql/how-to-s...
Examples of the [NO]WAIT clause in Oracle AI Database 23.26.2

insert into … nowait
select … for update wait 42 microseconds
update … set … wait 42 milliseconds
delete from … wait 42 seconds  
merge  into … wait forever
041
Reposted by Chris Saxon
Connor McDonald on Database and SQL @connormcd.bsky.social · 15/05/2026
It's not *just* all about AI. APEX 26.1 also brings improved integration with all of the new features in Oracle AI Database 26ai. Using the Boolean datatype? APEX has you covered.
011
Reposted by Chris Saxon
Mike Dietrich @mikedietrichde.com · 13/05/2026
RU 19.31 has been put on hold and will be available soon again Since several people mailed me yesterday and this morning about Release Update 19.31 been not available for download from My Oracle Support, here is a the explanation about why RU 19.31 has been put on hold and will be available soon…
mikedietrichde.com
RU 19.31 has been put on hold and will be available soon again
Since several people mailed me yesterday and this morning about Release Update 19.31 been not available for download from My Oracle Support, here is a the explanation about why RU 19.31 has been put on hold and will be available soon again. What has happened? We released a MOS Note with detailed information: (KB888427) Oracle Database 19.31 Patch Hold Due to ORA-00600 Errors on Exadata 25.2&hellip;
1116
Reposted by Chris Saxon
Mike Dietrich @mikedietrichde.com · 04/05/2026
Patch your databases against AI-enabled cybersecurity threats I guess you all read the announcements and predictions over the past weeks. New AI models and improvements to existing models may allow to find security issues in existing software much quicker. While this sounds alarming on one side…
mikedietrichde.com
Patch your databases against AI-enabled cybersecurity threats
I guess you all read the announcements and predictions over the past weeks. New AI models and improvements to existing models may allow to find security issues in existing software much quicker. While this sounds alarming on one side (yes, it does), it also enables software vendors to secure their software. But in order to benefit from it, you must patch your databases against AI-enabled cybersecurity threats&hellip;
074
Chris Saxon @chrisrsaxon.bsky.social · 05/05/2026
Complex queries can duplicate rows by accident To help you avoid this Oracle AI Database 23.26.2 adds: FROM <subject> JOIN TO ONE ( t2, t3, ... ) If the output duplicates rows from <subject> the query errors By default it uses FKs to define the join Read more at blogs.oracle.com/sql/avoid-jo...
There is a many-to-one relationship 

from departments to locations
from locations to countries

Using 

departments JOIN TO ONE ( locations, countries ) is valid because it follows these many to one relationships

Other table orders for JOIN TO ONE are invalid
131
Reposted by Chris Saxon
Connor McDonald on Database and SQL @connormcd.bsky.social · 01/05/2026
I've got me some fresh new 23.26.2 goodness! Quite a different patching process than 19c - much easier!
111
Chris Saxon @chrisrsaxon.bsky.social · 01/05/2026
Another quarter Another batch of new Oracle #SQL features in the 23.26.2 RU 😀 See the complete list at docs.oracle.com/en/database/... Here are some of the highlights - which are your favourites?
docs.oracle.com
Oracle AI Database New Features
This book describes the new features in Oracle AI Database 26ai.
131
Reposted by Chris Saxon
Mike Dietrich @mikedietrichde.com · 23/04/2026
April 2026 Release Updates (RUs) 19.31 and 23.26.2 are delayed Yesterday, I delivered a full-day workshop for ora2know in Düsseldorf. And we discussed the most recent RUs as well, especially since "Database Patching" consumed a significant part of the day content-wise. I learned that the RUs have…
mikedietrichde.com
April 2026 Release Updates (RUs) 19.31 and 23.26.2 are delayed
Yesterday, I delivered a full-day workshop for ora2know in Düsseldorf. And we discussed the most recent RUs as well, especially since "Database Patching" consumed a significant part of the day content-wise. I learned that the RUs have now a target date of April 28 for Linux, and May 12 for other ports. Which means that the April 2026 Release Updates (RUs) 19.31 and 23.26.2 are delayed&hellip;
192
Reposted by Chris Saxon
Gerald Venzl @gvenzl.bsky.social · 20/04/2026
📚 New Reading List is out! This week we got lots and lots of #Oracle #AI #Database 26ai posts and new compute shapes on #OCI 📖 Happy reading!
geraldonit.com
Reading List – April 2026 #3
Lots and lots of Oracle 26ai posts
011
Chris Saxon @chrisrsaxon.bsky.social · 15/04/2026
Oracle AI Database 23.26.1 added the DATEDIFF function DATEDIFF ( <unit>, <start date>, <end date> ) Despite the name this is not computing elapsed time It counts the time boundaries crossed Read my latest post for full details blogs.oracle.com/sql/how-to-f...
How does DATEDIFF work?

Examples showing when DATEDIFF counts a time boundary crossed for DAY, WEEK, and YEAR
030
Chris Saxon @chrisrsaxon.bsky.social · 08/04/2026
Get the Nth row in Oracle #SQL with OFFSET n-1 FETCH NEXT ROW To include ties, use N plus all ties: NTH_VALUE ( ..., n ) OVER ( ORDER BY ... ) = n N distinct value: DENSE_RANK () OVER ( ORDER BY ... ) = n QUALIFY in 23.26.0 simplifies the last two; details at blogs.oracle.com/sql/how-to-g...
Get Nth rows – third lowest paid person plus all ties

Example SQL query using QUALIFY to do this
041
Chris Saxon @chrisrsaxon.bsky.social · 07/04/2026
Congrats to the March Weekly DB Dev Gym winners 1 James Su 2 JeroenR 3 mentzel.iudith And the winners for Q1: 1 James Su 2 mentzel.iudith 3 Stelios Vlasopoulos Well done to all who took part Think you know Oracle #SQL better? Play at devgym.oracle.com/pls/apex/f?p...
media.tenor.com
a congratulations message with a cartoon character wearing headphones
ALT: a congratulations message with a cartoon character wearing headphones
020
Reposted by Chris Saxon
Gerald Venzl @gvenzl.bsky.social · 30/03/2026
📚 New Reading List is out! This week we got: 🤖 🎉 A lot of great announcements in and around the #AI space 😎 🛠️ some #SQL fun with #JSON and more, and 🎪 behind-the-scenes GPU training and cloud network performance 📖 Happy reading!
geraldonit.com
Reading List – March 2026 #4
Announcements, SQL fun and more!
011
Chris Saxon @chrisrsaxon.bsky.social · 27/03/2026
@toonkoppelaars.bsky.social comparing the impact of using assertions to triggers for data validation in Oracle AI Database Spoiler alert: Assertions can increase transaction throughput 30% If it doesn’t, you should investigate #apexworld2026
Using assertions to enforce business rules increases your transaction throughput 30% compared to triggers
140
Chris Saxon @chrisrsaxon.bsky.social · 26/03/2026
Generative AI helps you write more code faster But real productivity comes from writing less code Marc Sewtz showing us how you do this with #orclapex by declaring your intent #apexworld2026
Real productivity = less code
041
Chris Saxon @chrisrsaxon.bsky.social · 26/03/2026
There’s attendees from all over the world at #apexworld2026
Attendees for APEX World 2026
082
Chris Saxon @chrisrsaxon.bsky.social · 23/03/2026
Congrats to the winners of the #OracleACE assertions bounty! 1st Enforcing Acyclic Hierarchies With Assertions @salvis.com 2nd Temporal Assertions @anthony-harper.bsky.social 3rd Assertions for data integrity on a less-than-ideal data model @kibeha.dk Details at blogs.oracle.com/sql/assertio...
blogs.oracle.com
052
Reposted by Chris Saxon
Gerald Venzl @gvenzl.bsky.social · 17/03/2026
📚 New Reading List is out! ⁉️ Assertions, 🎛️ GPU clusters, 🤖 skills and 📈 financial results are part of this week's reading list. 📖 Happy reading!
geraldonit.com
Reading List – March 2026 #3
AI, SQL and financial results
002
Reposted by Chris Saxon
Kim Berg Hansen: SQL ♠ 🤓 👨‍🍳 🍺 @kibeha.dk · 06/03/2026
Assertions for data integrity on a less-than-ideal data model. www.kibeha.dk/2026/03/asse... Or "How I could have used assertions 25 years ago when I worked with Concorde XAL"... #OrclDB #SQL #Assertions #OracleACE
kibeha.dk
Assertions for data integrity on a less-than-ideal data model
25-30 years ago I worked a lot with the Danish developed ERP system called Concorde XAL. It ran on top of a database (choice of several, mos...
275
Reposted by Chris Saxon
Chris Saxon @chrisrsaxon.bsky.social · 27/02/2026
We're still looking for interesting assertions use cases Just over two weeks left for #OracleACE to get your entries in Bounty closes 15th March For full details read blogs.oracle.com/sql/assertio...
SQL statement:
select use_cases from assertions where creator = 'Oracle ACE'
order by real_world_applicability + complexity + novelty desc
fetch first 3 rows only
243
Reposted by Chris Saxon
SQLDaily @sqldaily.bsky.social · 27/02/2026
Stretch your #SQL skills with #SQuizL A free guess the SQL statement quiz Every day there's a new Oracle SQL statement to solve in six tries or less Pick from the fragments below to complete the statement on the top left Can you get it in one? buff.ly/hpGFuBa
SQuizL for 27 Feb 2026. 

Guess the SQL statement in the top left which ends "pokemon_trainers" using the clues provided below.
021
Chris Saxon @chrisrsaxon.bsky.social · 27/02/2026
We're still looking for interesting assertions use cases Just over two weeks left for #OracleACE to get your entries in Bounty closes 15th March For full details read blogs.oracle.com/sql/assertio...
SQL statement:
select use_cases from assertions where creator = 'Oracle ACE'
order by real_world_applicability + complexity + novelty desc
fetch first 3 rows only
243
Reposted by Chris Saxon
Anders Swanson @anders-swanson.bsky.social · 23/02/2026
Brand new to Oracle AI Database? Start Here Many Oracle guides are written for DBAs or long-time developers, and as a newcomer it feels like you’re expected to already know the jargon. I started in the same place, learning the as I went, and I’m still learning each day. If you're considering using…
andersswanson.dev
Brand new to Oracle AI Database? Start Here
Many Oracle guides are written for DBAs or long-time developers, and as a newcomer it feels like you’re expected to already know the jargon. I started in the same place, learning the as I went, and I’m still learning each day. If you're considering using Oracle AI Database, I'm here to make this easy for you. Prefer code samples over blogs?
052
Reposted by Chris Saxon
Tim Hall @oraclebase.bsky.social · 24/02/2026
Aggregation Filters in Oracle AI Database 26ai oracle-base.com/articles/26/...
011
Reposted by Chris Saxon
Philipp Salvisberg @salvis.com · 23/02/2026
Hierarchies should be trees and not loops. Learn how SQL Assertions in Oracle AI Database 23.26.1 can help prevent cycles in hierarchical data. www.salvis.com/blog/2026/02...
salvis.com
Enforcing Acyclic Hierarchies With SQL Assertions
Introduction Referential integrity constraints have been available since version 7 of the Oracle Database. While these constraints ensure that referenced rows exist, they cannot express more complex i...
083
Reposted by Chris Saxon
Gerald Venzl @gvenzl.bsky.social · 23/02/2026
📚 New Reading List is out! This week, we got a lot of great ⭕ #Oracle AI #Database and 🤖 #AI content! 📖 Happy reading!
geraldonit.com
Reading List – February 2026 #4
Lots of good 26 (and) ai content
032
Chris Saxon @chrisrsaxon.bsky.social · 19/02/2026
The recording for this session is now avaiable www.youtube.com/watch?v=ulLy...
youtube.com
What will fourth normal form fix in your database?
YouTube video by Oracle Developers
021
Chris Saxon @chrisrsaxon.bsky.social · 19/02/2026
You can conditionally filter aggregates in Oracle AI Database 23.26.1 with fn ( col ) FILTER ( WHERE ... ) In earlier releases use fn ( CASE WHEN ... THEN col END ) Both these filter the rows as part of the aggregration Read more in my latest post blogs.oracle.com/sql/conditio...
Example SQL statement in 23.26.1 with the FILTER clause for aggregates

select sum ( salary ) filter ( 
         where job_id = 'IT_PROG' 
       ) total_programmer_salaries,
       avg ( salary ) filter ( 
         where job_id like '%CLERK' 
       ) mean_clerk_salaries
from   employees;
010
Reposted by Chris Saxon
SQLDaily @sqldaily.bsky.social · 13/02/2026
Calling #OracleACE: we want your assertion use cases! We’re opening a bounty for creative, real-world solutions using assertions Submit your blog post, video, script or slide deck the contribution app by the end of 15 March Full details at buff.ly/fNgDHQv
A SQL statement finding the top three assertions use cases
041
Chris Saxon @chrisrsaxon.bsky.social · 09/02/2026
Great work by the top 3 players in the Weekly DB comp on Oracle Dev Gym for January 1st mentzel.iudith 2st Mahamoutou 3rd Andrey Zaytsev 👏🏆 Thanks to all who took part See the full rankings at devgym.oracle.com/pls/apex/f?p...
devgym.oracle.com
010
Chris Saxon @chrisrsaxon.bsky.social · 06/02/2026
In Feb's Ask TOM Live we're looking at fourth normal form: "A table is in 4NF if and only if, for every one of its non-trivial multivalued dependencies X ↠ Y, X is a superkey" To help you understand this, would you prefer A description of these technical terms? Something more informal?
230