Patrick Barel

Sr. Oracle Developer



Patrick Barel is a PL/SQL Developer for Qualogy [] in the Netherlands. Besides working with SQL and PL/SQL he wrote different plug-ins [] for PL/SQL Developer []. He publishes articles on his own blog []. In 2015 he received the Oracle Developer Choice Award in the PL/SQL Category. In 2019 he has been promoted to ACE Director.


Get your money’s worth out of your Database (Connect 2019)


The database is one of the most important assets to your application. Besides being one of the most important assets it is also one of the most expensive parts in your application. Most organizations don’t get the most out of their database license and treat it like a simple bit bucket. The modern Oracle database can do so much more than just store data. Features you can use ‘in the database’ include: - Flashback queries (what did my data look like at a certain moment in time) - Data Security (only read and write data you are authorized for) - Performance increase (Set based operations, regular expressions, analytics) - EBR (near zero downtime application upgrades or support for parallel database worlds) - Data integrity/quality (Single Point Of Data Integrity) - Special SQL features like paginating your result. This presentation will show these features as well as some of the enhancements in the Oracle 12c Database including: - Identity columns (12c) - Invisible columns (12c) - Whitelisting PL/SQL program units (12c) - Improvement of execution of PL/SQL in a SQL query (12c) - Cross session Result cache (both SQL and PL/SQL) (11g)

A Gentle Introduction to Polymorphic Table Functions (Connect 2019)


Oracle database 18c introduces Polymorphic Table Functions. This session will tell you about Polymorphism. How can you apply this in pre-18c databases? I will show you what problem and the solution when your data or structure changes. I will also show you an example of a Polymorphic Table Function and how this can help protect you from changing table structures and how you can apply the same code to different table structures without changing or even recompiling the code. After this session you will understand when to use which technique.

Get to know your program by instrumentation (Connect 2019)


When we create our programs, we usually don’t anticipate anything will go wrong. And it won’t, during development and testing. But in production there is always someone who does something unexpected and your code fails. When running in dev you can easily step through your code and see what happens, but in production you are not allowed to do this. How great would it be that you could see what was happening in the production environment? But logging every step takes up a lot of the performance. Installing debuggable code in production just to see what’s going on is usually a no-go. By instrumenting your code you can get the information you need by ‘flipping a switch’. This session shows how you can use the (extended) Open Source Logger framework to accomplish this.