I’m speaking at #DOAG2016 and #ukoug_tech16

This year I get to speak about advanced SQL twice at two different conferences. My first presentation is about row pattern matching with MATCH_RECOGNIZE and my second deals with ranges - including but not limited to Temporal Validity ranges.

Enhancement Request for SQL Developer for users of Logger

Juergen Schuster, who has been enthusiastically trying OraOpenSource Logger, raised an idea for the debug/instrumentation library requesting the addition of a standard synonym “l” for the package. The motive behind this request was to allow our PL/SQL code to remain easy to read, in spite of all the calls to logger sprinkled throughout that are needed for effective debugging and instrumentation.

In the judgement of some (myself included) the addition of the synonym to (more...)

A Guide to the Oracle Data Types

In this article, I explain what the different data types are in Oracle database and everything you need to know about them. What You’ll Learn about Oracle SQL Data Types There are many data types in the Oracle database. There are character, number, date, and other data types. When you create a table, you need to […]

Oracle EMPTY_CLOB Function with Examples

In this article, I’ll explain what the EMPTY_CLOB function does and show you an example of how to use it. Purpose of the Oracle EMPTY_CLOB Function The EMPTY_CLOB function is used to initalise a CLOB column to EMPTY. It can be used in several places: In an INSERT statement In an UPDATE statement Initialising a […]

Create a Python Module

Sometime formal programming documentation is less than clear. At least, it’s less than clear until you’ve written your first solution. The Modules section of the Python language is one of those that takes a few moments to digest.

Chapters 22 and 23 in Learning Python gives some additional details but not a clear step-by-step approach to implementing Python modules. This post is designed to present the steps to write, import, and call a Python module. (more...)

Python for loops

It’s always interesting to explain a new programming language to students. Python does presents some challenges to that learning process. I think for loop can be a bit of a challenge until you understand them. Many students are most familiar with the traditional for loop like Java:

for (i = 0; i < 5; i++) { ... }

Python supports three types of for loops – a range for loop, a (more...)

Install cx_Oracle for Python

This shows you how to install the cx_Oracle library for Python 2.7 on Fedora Linux. If Fedora has it on the server you can download it with the following yum command:

yum install -y cx_Oracle-5.2.1-11g-py27-1.x86_64.rpm

Currently, you’ll get the following failure because it’s not available in the Fedora repository:

Loaded plugins: langpacks, refresh-packagekit
mysql-connectors-community                                      | 2.5 kB  00:00:00     
mysql-tools-community                                           | 2.5 kB  00:00:00     
mysql56-community                                               | 2.5  (more...)

And the Winner of Digital Partner of the Year for UKOUG is ….

…AuraPlayer ! (well for Silver anyways)

Last night, we had the pleasure of attending the ninth annual UKOUG Partner of the Year awards ceremony at the Café de Paris in London where we were honored with the Award for Digital Transformation Partner of the Year- Silver!


Amid the fun at the ceremony, Gwen Edwards (AuraPlayer’s VP of Business Development) had the chance to meet and snap a selfie with incoming Executive Director of UKOUG, James Jeynes! (more...)

Drill to Detail Podcast: Data Modeling, Data Vault, and Snowflake!

Check out Episode 5 of Drill to Details where Mark Rittman asks me about data modeling, data vault, and Snwoflake DB!

Oracle Segment Fails

The instance that I’ve built for my students in a Fedora VM is quite stable except for one feature. The feature is the hibernation process of the base operating system. Sometimes when the base operating system hibernates, it causes the Oracle shared memory segment to fail. When that happens you get the following error:

ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux-x86_64 Error: 2: No such file or directory
Process  (more...)

Why I Moved from CompleteITProfessional to DatabaseStar

Complete IT Professional has been renamed and rebranded to Database Star. I’ll explain what that means and why I made this change in this article. What Was The Change? You’re probably reading this on the new DatabaseStar.com website, wondering why you’re here instead of on CompleteITProfessional.com. Well, the reason is that I have decided to […]

The Vicious Index that Sabotages Plans it is not Part of [@DBoriented]

We all know that adding a new index may change the execution plans of existing queries – sometimes improving the performance, other times causing a performance degradation (and sometimes not making any difference).
But is it true even if the new index is not used by the new execution plan? And even if the new index is invisible?
I’ve recently discovered that the answer is yes for a specific scenario that involves a descending and (more...)

October Webinar Series: Digital Transformation, Forms and Mobile

This year’s Oracle Open World was an exciting experience for AuraPlayer, with many flocking to our booth for live demos and attending Mia’s sessions with clients like Rogers Group Inc. We were sad that many were unable to attend the conference, so we are bringing Oracle Open World to you in our October webinar series!

In the first installment of this series, “Digital Transformation: From Legacy to Enterprise Mobility,” we will demonstrate step-by-step how best (more...)

Connect2016 – Australian Conference Series

It's less than a month away from the Australian conference series and I'm probably about 2 thirds ready for my sessions.

Australia? Yup, the Perth gig will be on 7-8 Nov and the fun continues in Melbourne on 10-11 Nov 2016.

Check out www.ausoug.org.au/connect2016, then think about that junket. Jokes aside, events like these are the best place to chat to people about Oracle technology, with plenty of sessions to allow (more...)

How can we use Oracle to deduplicate our data

Dear Patrick,

We have gone through a merger at our company where we are trying to merge the databases. The problem now is that we have duplicate records in our tables. We can of course go through all the records by hand and check if they exist twice. Another option is to build an application to do this. But using the Oracle Database there must be a better way to do this. Any ideas?

Ramesh (more...)

OTN Appreciation Day: Tom Kyte #ThanksOTN

To answer Tim Hall’s call to appreciate OTN, I could have written about my go-to feature, the MATCH_RECOGNIZE clause, or my go-to development tool, Oracle SQL Developer. Instead, I’d like to salute my go-to “Oracle Technology” guy for over 10 years, Tom Kyte. It was 2005. After almost 25 years in IT, I knew something about […]

Visualizing System Statistics in SQL Developer – OTN Appreciation Day

Tim Hall inspired me with his #ThanksOTN (or “OTN Appreciation Day“) campaign to continue my mini-series on leveraging SQL Developer Reports for DBA tasks. Today with visualizing historical System Statistics from Statspack for performance analyses. #ThanksOTN I have three favourite Oracle features to rave about today: Analytic SQL Statspack SQL Developer (particularly the reports)! System Statistics As the […]

OTN Appreciation Day: Easy Execution Plans

As part of the #ThanksOTN idea on Twitter, my favourite Oracle feature is the ability to easily view and analyse execution plans for queries. Time and time again I’ve needed to see how a query is running, and Oracle databases make it easy to view the execution plan. You can view it in either a text format […]

OTN Appreciation Day: Edition-Based Redefinition

Here’s my contribution to the OTN Appreciation Day.

Edition-Based Redefinition (EBR) is a really great feature, or more accurately a set of features, that was introduced in Oracle 11.2 and allows for online application upgrades using hot rollover. If you know me then you know that I talk (ok, preach) about it a lot, and from a long and successful experience.

It is impossible to learn EBR in 5 minutes, but perhaps you’ll understand (more...)

Multitenant Architecture 12c

I thought this illustration was an interesting view of Oracle Database 12c’s Multitenant Architecture. It posted on ToadWorld.com today in a new article by Deiby Gomez and I thought it might be interesting for others.


You can see how to provision a pluggable database in this article on provisioning a pluggable database. As always, I hope it helps.