Toon Koppelaars's Avatar

Toon Koppelaars

@toonkoppelaars

Real-World Performance @oracle - ACE Director alumnus - database design - architect of SQL assertions - πŸ“– Applied Mathematics for Database Professionals - @TUeindhoven alumnus - Views are my own

217
Followers
91
Following
1,490
Posts
14.11.2024
Joined
Posts Following

Latest posts by Toon Koppelaars @toonkoppelaars

Post image

I updated my SQL Assertion article with some maths and added the ALL ... SATISFY syntax that avoids double NOT EXISTS in Oracle Database SQL Assertions dev.to/franckpachot...

01.03.2026 09:50 πŸ‘ 46 πŸ” 3 πŸ’¬ 1 πŸ“Œ 0
Preview
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...

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

06.03.2026 15:50 πŸ‘ 7 πŸ” 5 πŸ’¬ 2 πŸ“Œ 1
Preview
Oracle 26ai with Assertions - a quick look under the cover... TL;DR: Some Very Simple tests of Assertions. Of course I want to know if it has any impact and maybe want to look a little bit closer or ev...

SQL-Assertions in #oracle26ai : They work. They are a Very Powerful feature!).
And you can even see + inspect some the effort that "makes it happen"

/cc
@toonkoppelaars.bsky.social
@oracleace.bsky.social

simpleoracledba.blogspot.com/2026/03/orac...

08.03.2026 19:20 πŸ‘ 4 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
Using SQL Assertions to Enforce Temporal Data Integrity Introduction More than twelve years ago, I described the multi-temporal features of Oracle Database in this blog post. In the conclusion, I wrote that I missed a temporal DML API, temporal integrity c...

How do you enforce temporal data integrity?

With SQL Assertions in Oracle AI Database, we can now implement constraints such as:

βœ… Non-overlapping validity periods
βœ… Temporal referential integrity

Here's a practical example using an extended DEPT-EMP model.

www.salvis.com/blog/2026/03...

09.03.2026 15:24 πŸ‘ 5 πŸ” 3 πŸ’¬ 0 πŸ“Œ 0
Preview
a bald man is wearing a red sweater with a star trek logo on the front . ALT: a bald man is wearing a red sweater with a star trek logo on the front .

I’ll never get used to that…

06.03.2026 19:13 πŸ‘ 5 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

There's a 'from dual' missing in your attempt 2

06.03.2026 18:01 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Oracle Real World Database Performance Engineer As a member of the Real-World Performance part of Oracle Database development, you will take an active role in the definition and evolution of standard practices and procedures. Our team is looking fo...

For my US followers:
careers.oracle.com/en/sites/job...

27.02.2026 18:57 πŸ‘ 0 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0

That tool literally made me make the move to the architecture/DBA/performance areas...

And then J2EE happened. No returning to being a dev for me...

24.02.2026 16:12 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

CASE*Designer is what drove me away from being a (client/server) developer: suddenly it took me weeks to crank out something useful that could be tested, instead of hours...

And don't start me about, "generating DDL-scripts, or Forms"...

24.02.2026 16:12 πŸ‘ 2 πŸ” 0 πŸ’¬ 2 πŸ“Œ 0

Pencil and paper, for something quick.
Powerpoint for something more permanent.

24.02.2026 10:49 πŸ‘ 2 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Fantastic!

14.02.2026 19:57 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
The Rise of Oracle, SQL and the Relational Database
The Rise of Oracle, SQL and the Relational Database YouTube video by Asianometry

www.youtube.com/watch?v=zSn8...

01.02.2026 16:15 πŸ‘ 4 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
FairLight & Genesis Project - The Hat (C64 Demo) YouTube video by FairLight - Home of the Real Crackers

www.youtube.com/watch?app=de...

01.02.2026 12:07 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Cross table constraints with SQL assertions
Cross table constraints with SQL assertions YouTube video by Oracle Developers

www.youtube.com/watch?v=dNvI...

27.01.2026 17:54 πŸ‘ 7 πŸ” 4 πŸ’¬ 0 πŸ“Œ 0
Assertions (23.26.1)

Declare cross-row, cross-table constraints with simple SQL
Use existential ([NOT] EXISTS) expressions to define rule

Example to prevent overlapping job history ranges

Assertions (23.26.1) Declare cross-row, cross-table constraints with simple SQL Use existential ([NOT] EXISTS) expressions to define rule Example to prevent overlapping job history ranges

Assertions (23.26.1)

Declare cross-row, cross-table constraints with simple SQL
New universal expressions (ALL-SATISFY) as a clearer way to express rules that apply to every row

Example to prevent overlapping job history ranges

Assertions (23.26.1) Declare cross-row, cross-table constraints with simple SQL New universal expressions (ALL-SATISFY) as a clearer way to express rules that apply to every row Example to prevent overlapping job history ranges

Assertions

Define cross-row, cross-table constraints with simple SQL:

CREATE ASSERTION ... CHECK ( <rule> )

Use this to enforce rules like

* No overlapping start-end dates
* Every parent row must have a child row (invoices must have an invoice line)

27.01.2026 17:10 πŸ‘ 3 πŸ” 1 πŸ’¬ 1 πŸ“Œ 1

This is a fresh www.oracle.com/database/tec...
I'd assume it wouldn't need repairing?
But from your response I gather, I did the things that should've been done?

27.01.2026 16:31 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Keep hitting ORDS-22001, what's the thing I'm missing?
- I've granted my procedure to everyone
- I've used ords_admin.add_plsql_gateway_procedure to add it
- I've added it to wwv_flow_epg_include_mod_local

Any ideas?
@alexnuijten.bsky.social @apexconsulting.nl

27.01.2026 15:27 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Preview
Applied Mathematics for Database Professionals (Expert's Voice) Applied Mathematics for Database Professionals (Expert's Voice) [deHaan, Lex, Koppelaars, Toon] on Amazon.com. *FREE* shipping on qualifying offers. Applied Mathematics for Database Professionals (Expert's Voice)

Yup, around the same time Lex and I were working on:
www.amazon.com/Applied-Math...

22.01.2026 14:33 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
SQL Language Reference

Oh my...
docs.oracle.com/en/database/...

22.01.2026 12:30 πŸ‘ 12 πŸ” 4 πŸ’¬ 1 πŸ“Œ 1
Post image

At dbdbd2025.uantwerpen.be

12.12.2025 10:08 πŸ‘ 7 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

You missed one there... 🧐

04.12.2025 13:37 πŸ‘ 3 πŸ” 0 πŸ’¬ 2 πŸ“Œ 0
Post image

Adds used to be fun...

25.11.2025 17:46 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

@lukaseder.bsky.social ☝️

21.11.2025 19:19 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Also in SQL assertions, you cannot have nested ALL-SATISFY, only at top-level.

21.11.2025 19:18 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Post image

Next interesting topic.

20.11.2025 07:58 πŸ‘ 2 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Post image

Next: Roel and Alex.
#DOAG2025

19.11.2025 16:24 πŸ‘ 7 πŸ” 3 πŸ’¬ 0 πŸ“Œ 0

For me it was other way around. The clip reminded me of the work we were doing πŸ˜€

19.11.2025 09:11 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Post image

Some of it is easy to spot...

16.11.2025 14:57 πŸ‘ 6 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Preview
TOON vs JSON: A Modern Data Format Showdown Introduction The evolution of data formats tells a fascinating story about how technology...

This is just fan-tas-tic :-)
dev.to/sreeni5018/t...

12.11.2025 12:27 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Come to my session next week at DOAG...

11.11.2025 15:21 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0