Reverse Engineering a Crud Matrix complete with SQLDeveloper Extension – Version 2

A couple of years ago, I wrote an application to reverse-engineer a CRUD matrix for tables in an Oracle database.
I’ve since used it quite a lot for impact analysis and have refined it a fair amount. I’m now happy enough with the new version to let it take it’s first steps into the wider world….where doubtless people will be able to find some of the bugs that I’ve missed.
At this point, if you’re wondering what a CRUD matrix is, you can have a look at the original post here. Continue reading

Installing PL/SQLDeveloper under Wine in Ubuntu

Tantalus – that Greek bloke who was doomed for all eternity to eternal thirst and hunger despite having food and water within reach. Had he been a Geek, rather than a Greek, he would’ve worked in a place where you can choose which OS to use…but be denied by the fact that, as a database developer, he had to use PL/SQLDeveloper – a Windows only IDE.

Oh the bitter irony. Well, unlike Tantalus, I’ve decided that, as with so many other problems in life, this particular dilemma can be resolved by alcohol – in this case, a glass of Wine.

WINE – formerly WINdows Emulator, now re-christened Wine Is Not an Emulator. It’s open source so, on this occasion, we don’t have to beware Geeks bearing gifts ( sorry).

For this particular exercise, I’m using Ubuntu 10.04.
PL/SQLDeveloper is that “other” PL/SQL IDE – this one being published by Allround Automations. Continue reading

Apache, Aliases and Zenity on Ubuntu – how to control your ego

It’s the weekend. My girlfriend is staring at the screen in ferocious concentration as she does battle with her latest essay plan for the Masters she’s studying for.
Evicted from the desk and consigned to a dark corner, I’m trying to find some diverting, productive and, above all, quiet, way to amuse myself. As any parent will know, when the kids are quiet, it usually means they’re up to something… Continue reading

Configuring OPAL on Ubuntu Desktop – without the Oracle Instant Client

Many years ago, my son had more-or-less worked out that Santa was a myth, but hadn’t wanted to say anything for fear of decreasing the number of Christmas presents he might get.
Taking my parental duties as seriously as I do, I took him to one side and explained the truth…
After Return of the Jedi, Darth Vader fell upon hard-times. There weren’t many film roles about for Dark Lords of the Sith. Eventually he decided upon a change of career and bought the round off Father Christmas, who was retiring.
Obviously, Darth Vader has a rather more direct approach to naughty children and if my son didn’t behave himself, not only would he not get any presents but he might get something cut off.
It is for this reason that Simon has the Darth Vader theme as the ringtone on his phone for when I call.

All of which has at best, a tenuous link to the theme of this post ( but I thought it was time to get into the festive spirit).

Following on from last week’s introduction to PL/SQL, some people have asked about using PL/SQL a web application (without all that mucky APEX stuff). In order to start working up some examples of this, I thought it would be a good idea to use PHP as a front-end. Yes – Oracle’s version of a LAMP system – Oracle, PHP, Apache, Linux (OPAL). After all, how hard could it be ?
Continue reading

PL/SQL – A Programmer’s Introduction – or Welcome to the Dark Side

This week, the Open Source Karma has been cast-aside. We’re going proprietary in a big way. We’re going to the very heart of Oracle’s power, deep inside the RDBMS – yes – it’s PL/SQL.

This post is dedicated to ( and essentially co-written by) Simon. Yes, my long-time best mate, long-time Luton Town fan, long-time Teradata expert and long time everything really ( we’ll he’s not as young as he was).
After all these years, Simon has become a bit curious about this PL/SQL thing I’m always going on about and would like to know more.
It is this desire – and large amounts of beer – that has persuaded him to play the Igor to my mad scientist and have a wander through this very quick guide to the language at the heart of most Oracle applications. In fact we came up with several possible descriptions of Simon’s role in this post, but he had a “hunch” that this was the right one.
So for him, and any other programmers who want to get up and running with PL/SQL, but don’t need to be told what a variable is, what follows is – not so much a PL/SQL 101 – as a PL/SQL 23-and-a-bit. Continue reading

The PL/SQL Associative Array – the path to untold riches

Having given the matter some thought, I’ve concluded that there are two ways to fame and fortune.
The first of these is talent. For the benefit of my Colombian readership ( hello German) :
I can’t play football like Faustinio Asprilla; I can’t drive as fast as Juan Pablo Montoya; and as for Carlos Valdarama’s hair…well mine deserted me some time ago. I do have something in common with Shakira – my hips don’t lie. Unfortunately, what they say is “this waistline is the result of too many nights in the pub”.

The second way is winning the lottery. OK, so the fame thing is a bit tenuous, but from the outside looking in, I’d say it was overrated. So, never mind the fame, quiero solo mucho dinero ( I just want loads of cash) !
Continue reading

PL/SQL Arrays – The Autumn Collection

I’ve spent some time recently playing with PL/SQL arrays in the context of uploading from flat-files.
In the course of this, it struck me that PL/SQL arrays come in a variety of shapes and sizes ( or in this case, small, medium and large).
So, if Sir – or Madam – would care to step into the fitting room, we’ll see if we can find something to suit.
Continue reading