David Njoku

David Njoku is a software developer at CACI. His tools of choice are Oracle technologies and he has over a decade of experience building applications with Oracle Forms, Oracle Application Development Framework and Oracle Application Express. David holds a degree in Accountancy and earned his bread as a short story writer and a magazine editor and columnist before turning to IT. David can be contacted at about.me/davidnjoku.

07 September 2015
07 September 2015

Introduction to Analytic Functions (Part 1)

2
30
Analytic functions have been part of Oracle for a very long time now – ever since 8i back in 1999. Analytic functions are an ANSI/ISO standard, and so you’ll find that they are similarly-implemented across a number of compliant databases. (This SQL Server article on “window functions” from sister site, Simple Talk, could very well have been talking about Oracle.) Analytic… Read more
2
30
07 July 2015
07 July 2015

Anatomy Of A SELECT Statement – Part 3: Recursive Subquery Factoring

0
1
We need a baritone voiceover man. You know how those huge TV shows – 24, Prison Break, Jane the Virgin – always start with a recap sequence to bring you up-to-date in case you’d missed the last episode. And it’s always a deep-voiced male narrator: “Previously on The Walking Dead,” he’ll say. We need that guy. Previously on Anatomy of a… Read more
0
1
15 April 2015
15 April 2015

In Defence of Triggers

0
0
Database triggers. If you have spent any length of time within the Oracle development circle you might have noticed something strange: pretty much every expert – commentator, blogger, Oracle evangelist – has written an article condemning triggers. And every single time the comment section is flooded with developers/DBAs defending them. I recently joined the fray, writing an article warning against… Read more
0
0
16 March 2015
16 March 2015

The Problem With Triggers

2
2
Feeling brave?  Enjoy danger? Well, I dare you to walk into a room full of Oracle experts wearing an I ♥ DATABASE TRIGGERS t-shirt. Let’s see if you walk out of that room alive. Database triggers are the Oracle feature that developers love to hate, perhaps above every other. … Read more
2
2
02 March 2015
02 March 2015

Oracle Programming Basics: Overloading

1
3
It is probably a bad idea to define a word by using a bigger one, but I really can’t introduce the concept of overloading without briefly mentioning polymorphism. Polymorphism, in computer programming, is the ability of an object to interface in different ways depending on other, external criteria. And if that isn’t exactly clear, don’t worry about it; just know… Read more
1
3
16 October 2014
16 October 2014

External Tables: An Introduction

0
8
At its most basic level, Oracle databases are built around data based within tables held within the database, and the moulding of that data into information and meaning. Under this model, data is created within the database or imported into it. There is, however, a third way. Using external tables, Oracle can query the contents of flat files held outsid… Read more
0
8
16 September 2014
16 September 2014

Introduction to Oracle Password Verification and Complexity Function

0
4
Security is in the news again.  It seems there’s no greater click-bait than a story about indecent photos of beautiful young Hollywood actresses stolen from their iPhones. Find a way to rope a cute kitten into the story and the Internet might very well explode. The current theories abounding seem to suggest that the vulnerabilities lay not with Apple, but… Read more
0
4
27 June 2014
27 June 2014

Oracle for Absolute Beginners: Part 8 – Database Design and Normalization

3
6
A wise man once said, I know one thing: that I know nothing. If you’ve followed this series from the very beginning I am hoping that you’ve gone from knowing absolutely nothing about Oracle database programming to this point where you know the foundations, know how the parts fit together – basically, know enough to know that there’s a who… Read more
3
6
10 June 2014
10 June 2014

Oracle for Absolute Beginners: Part 7 – Creating Tables, Constraints and Triggers

0
4
A wise man once said: start at the beginning and go on till you come to the end: then stop. We’ve done things a little differently; all this time we’ve been talking about examining and manipulating the data in our tables, but we have never paused to consider where these tables come from, or discuss how they are created.  Tim… Read more
0
4
07 May 2014
07 May 2014

Oracle for Absolute Beginners: Part 6 – Procedures and Functions

1
36
A wise man once said, insanity is doing the same thing over and over again but expecting different results. If that is the case then no one’s saner than a computer programmer*, because programming is executing the same code over and over again and expecting the same results. We’ve already talked about bundling up statements in anonymous PL/SQL blocks; now… Read more
1
36
07 April 2014
07 April 2014

Oracle for Absolute Beginners: Part 5 – PL/SQL

0
12
A wise man* once said, all software programming is about hoops and loops. You take some variables, give them hoops to jump through and, depending on their success or failure, you give them some actions to loop through a number of times. Might sound basic, but that’s what all software code – from Angry Birds to the space shuttle –… Read more
0
12
10 December 2013
10 December 2013

Oracle for Absolute Beginners: Part 1 – Databases

3
80
A wise man* once said, an expert is someone who uses big words and acronyms where simple phrases would do just as nicely. So stand back and listen to this: Database, Relational Database, DBMS, RDBMS, SQL, Sub-queries, normalisation. [* that wise man was me.] So now that I’ve established my credentials by bamboozling you with arcane words and capital letters,… Read more
3
80
25 November 2013
25 November 2013

A Beginner’s Guide to Optimizer Hints

0
16
It is often easy to forget this, but in many ways it is after we hit the execute button that the really exciting stuff starts with our code. A number of engines silently spring into action; including the optimizer. The optimizer analyses your SQL statement and decides the most efficient way to execute it based on the objects involved in… Read more
0
16
07 August 2013
07 August 2013

Introduction to Instrumentation

0
0
The forest is thick with menace. The sunlight barely breaks through the leaves and is sludgy like curdled milk; the shadows of the branches look like gnarly fingers reaching to grasp at the pair of frightened small children. As they wind down the path, Hansel leaves a trail of pebbles. “It will help us find our way home,” he says… Read more
0
0
12 June 2012
12 June 2012

Introduction to Oracle Flashback Technology (Part 3: Flashback Database)

0
0
In this series of articles, we are discussing the collection of tools that make up the Oracle Flashback Technology suite. They are varied in their purpose and in their implementation, but together they act very much like a morning-after pill for your database, a means by which developers and administrators can protect their database from immediate past errors and indiscretions… Read more
0
0