Who's online

There are currently 0 users and 33 guests online.

Recent comments



Here is a short video

D3 Show Reel from Mike Bostock on Vimeo.

Here is a longer tutorial video

Data-driven Documents from London Web Standards on Vimeo.

Oracle Open World: Good News , Bad News


Looking around Oracle Open World this year, it seemed like there was a significant drop in  attendees – at least compared to years past or especially compared to Dreamforce.  Feels like there is a lack of excitement. Makes me feel like Oracle has hit it’s apogee.

Datapump cleanup

Sometimes if you’ve been building data pump jobs via PL/SQL, you might get some part of it incorrect, and thus the job is left in the state of “DEFINING”, ie, you are building it but never managed to complete the process.  An interesting anomaly is that when this happens, your current session struggles to clean things up, ie,

Live Streaming Oaktable World!

UPDATE: recorded videos now available

If you can’t make it in person to Oaktable World, check it out via live streaming !


here is the agendaScreen Shot 2015-10-02 at 11.05.49 AM

Cloud Perspective: Cool New Stuff or Same Old Stuff ?

Is “The Cloud” Cool New Stuff or is it the Same Old Stuff ?

Cloud is upon us! Everywhere you turn vendors are offering cloud solutions promising (once-again) a single solution to solve the ills of our IT organizations.

Bah! Some naysayers say “this is just the same-old, same-old, we’ve been doing the cloud for years” – hmmmm is this really true?

Friday Philosophy – The Small Issue of Planes, Trains and…Coaches.

Today I get on a plane. It is a long flight, 10+ hours, and throughout all of it, some people will hate me. I even expect some Hard Stares. Why? Because I’ll be sitting in a seat with a large space in front of it – and my legs dangling off the front of the seat. Those over 6 foot will be fuming I have that extra leg room. See me sitting there. See me smiling:-) .

King of all I see

King of all I see

SQL*Plus hints and tips

I just posted a video on how I get the most out of my SQL*Plus usage.  You can check it out here

I reference various elements of my login.sql file throughout the video – so here’s login.sql file – feel free to utilise any parts of it for your benefit.

Existence checks

Often, to do an existence check for data, people issue a “SELECT COUNT(…)” against the relevant table. So in pseudo-code, the logic looks like something like this:

select count(*)
into   my_variable
from   MY_TABLE
where  COL = 

if my_variable > 0 then ...

For unique key lookups, then that’s fine, but it’s a risky strategy as a general premise, because counting all of the records can be costly, especially if you’re only interested in the first one. You are coding always hoping that some index lookup is going to be possible. And in strict terms, you actually are not meeting the requirement. Someone asked you to check for existence, NOT to get an exact count of how many matches there were. You are doing more work than you need to.

So here are some potentially better alternatives:

Option 1: stop after the first row

Your Data Awakens : Delphix Express CloneAttack at OOW

Want a free version of Delphix Express installed on your computer with the assistance of Oracle and Delphix experts? We will be holding #CloneAttack again at Oracle Open World on Oct 27 from 1:30-4:30.

CloneAttack is a hands on labs to install a fully operation Delphix Express environment on your laptop.

The labs will be hosted at the Creativity Museum, which is at the corner of Howard St and 4th St above the carrousel,  on Tuesday Oct 27  1:30pm to 4:30pm.  Dell  and DBvisit will also beholding #ToadAttack and #RepAttack in the same location with us.


Delphix Express: rolling a VDB back

The following is an example of rolling a virtual database (VDB) back in time with Delphix Express, the free version of Delphix. Delphix by default keeps a 2 week window of changes for virtual databases (configurable to 2 months, 2 years etc). Thus we can go back in time to any point in that time window.

Why would we want to go back in time?

Maybe something went wrong. For example VDBs are typically used by developers who aren’t as versed in databases as a DBA.  What happens when a developer accidentally drops a table yet there was other work in the database that they want to keep. In the industry, half the time, developer databases are not backed up because they are “just development databases.” With Delphix those developer databases are always backed up and we can go back in time in a few minutes, so if a developer accidentally drops a table or updates the wrong column we can recover in minutes.