One example you may have seen was the original apexblogs.info - this was a detail view IR showing aggregated posts of APEX bloggers.
It's now hosted at odtug.com/apex and this appears to use an alternative method (more...)
Read and monitor Oracle related blogs and news sources, all in one place.
The manager was proudly showing off his new IT classroom.
“Where is the projector?” I asked.
“Oh, we don’t need a projector. The instructor can just take over everybody’s screens.”
I have been teaching in environments like this, and it does not work well. When I have a piece of information or a computer screen projected in large format in front of everybody, the class has a common focus on the task. If (more...)
In a post a couple days ago, I promised to provide a best practice approach to reading external files with the
UTL_FILE package. My first assumption is that you’re reading unstructured data because structured data is best read by external tables because external tables can read data much faster with the
My second assumption is that you’re you don’t know how to use or choose not to use the
DBMS_LOB package; specifically, (more...)
The Heartbleed bug has shown that security vulnerabilities can pop up everywhere. Unfortunately, many IT organizations depend on a single security layer to secure their network – and as the ineffectiveness of the Maginot Line proved, that is a risky strategy. You need multiple security layers – what soldiers call Defence in Depth.This illustration is from my weekly Technology That Fits newsletter – sign up here.
Sometimes I’m surprised. Today, the surprise came when somebody pointed to an error in another author’s book. The person who asked the question had to send me a screen shot before I believed it.
The author’s code encounters the following error because the code was designed to loop through a multiple line file, and the code called the
UTL_FILE.FOPEN procedure with three instead of four parameters:
DECLARE * ERROR at line 1: ORA (more...)
Over the past few articles we’ve looked at database joins. It started out with me noticing that joins appear to be getting bad press recently and wondering whether they really are the root of all evil that some people seem to think they are.
Everybody knows they need good dental hygiene – daily brushing and flossing, regular checkups at the dentist. But many IT professionals don’t realize they need good IT hygiene as well – regular maintenance, security patches, etc.
If you don’t practice good IT hygiene, you will experience pain down the line. I’d like to help you avoid that – get in touch.
My carpenter has been putting in a new floor in a room in my house, and I noticed that he makes some of his tools as he goes along.
It’s not that he doesn’t have a hammer and a cordless electric screwdriver. But every once in a while, he needs to move, align or support something in a way that his standard tools do not support. So he immediately builds an ad-hoc tool out of (more...)
In my previous post, I showed how to clone a GitHub repository using SQL Developer. In this post I’m going to show to synchronize the remote and local repositories after remote gets modified.
Here I use GitHub to commit a file called sp_test_git.pls. You can create files by clicking on the icon the red arrow is pointing to.
The content of the file is a PL/SQL procedure that prints a message.
At this (more...)
Have you noticed that knowledge about IT systems seems to evaporate over time? I’ve seen quite a few systems where the only knowledge left was a few pages of yellowed paper in a dusty binder.
Keep system documentation inside your code to prevent information evaporation.
This is an idea for an enhancement to the PL/SQL syntax.
If I have the following declaration:
DECLARE in_record mytable%ROWTYPE; out_record mytable%ROWTYPE; BEGIN
I can do this:
INSERT INTO mytable VALUES in_record;
I can also do this:
UPDATE mytable SET ROW = in_record WHERE ...;
I can do this, as long as I list each and every column, in the right order:
INSERT INTO mytable VALUES in_record RETURNING cola, colb, colc INTO out_record;
But I (more...)
Being a huge fan of Logger, the PL/SQL logging utility, I really wanted this be to included in the project that I'm currently working on. So I downloaded it (link at the bottom of this blog) and included it in our deployment scripts. Done.... at least I thought so, but of course this wasn't the case.
The regular install script for Logger looks something like the following (parts removed and table names are changed):
I was just in Amsterdam last week, and they have the smallest cars I have ever seen:
At first, it looks counter-intuitive, given that the average Dutchman seems to be several meters tall. But really small cars is actually a very obvious solution for a crowded city like Amsterdam with many canals, narrow roads and very limited parking. These mini-cars are actually parked on the pavement, probably avoiding the 5 Euro per hour parking fee (more...)