Listing 1: A utility for scanning a set of data-dictionary views for keywords
CREATE OR REPLACE PROCEDURE dd_view_scan (
name_filter_in IN VARCHAR2 := NULL,
column_filter_in IN VARCHAR2 := NULL
l_name all_tab_columns.table_name%TYPE := UPPER (name_filter_in);
l_column all_tab_columns.column_name%TYPE := UPPER (column_filter_in);
CURSOR by_name_cur (NAME_IN IN VARCHAR2)
WHERE owner = 'SYS'
AND object_name LIKE NAME_IN
AND object_type = 'VIEW';
Steven Feuerstein PL/SQL Building a Code-Analysis Utility and Doing It Right the First Time By Steven Feuerstein OTN Member since 2001
A behind-the-scenes look at constructing a utility for validating code quality
One particular problem that nags at me is that the pressure of producing code under deadline often result in writing some, shall we say, suboptimal software. It may meet the minimum requirements. It may seem to work. But it is almost impossible to maintain, enhance, and debug.
In this 8-part series, Steven Feuerstein, one of the world's leading experts on PL/SQL (and an OTN Member since 2001), explains how he created OverloadCheck, a PL/SQL utility that relies on information in the data dictionary to analyze packages for ambiguous overloadings.
OK, but that's all such serious stuff. Another way to improve yourself as a PL/SQL (or any other kind of) programmer is to play (the right kind of) games.
Software development is based largely on symbolic logic, pattern analysis and problem solving. The better you are able to perform these fundamental sorts of brain activity, the better you will be able to
write software. And there are lots of games out there that will sharpen your brainiac skills.
Back in 1994, I decided that I would write a book about Oracle's PL/SQL language. I thought I knew it pretty well and the demand for Oracle books was booming. I'm a very lucky guy. Oracle PL/SQL Programming was the first independent text on PL/SQL, and lots of people liked it a lot, and bought it in great numbers. That allowed me to focus pretty much exclusively on PL/SQL for the last fifteen years: studying it, playing with it, writing about it, and writing it - I write lots of code.