Error and Log Libraries

In this series of posts about frameworks for PL/SQL, today I present the links for the free PL/SQL Error and Log Libraries that I know of:
Quest Error Manager also called QEM
PL/SQL Log & DBug Library

I use QEM as I have showed in a previous post.


Updates on the free programs I use

In November two of the best free programs I use got updated (mozilla firefox got it's update on October):
VLC: a cross-platform multimedia player that plays most multimedia files format (like .flv, .wmv, .avi, .mkv,...) as well as DVD, Audio CD, VCD, and also various streaming protocols.
7-zip: a Windows utility for manipulating archives. Formats 7z, ZIP, GZIP, BZIP2 and TAR are supported fully and other formats can be unpacked.

Another program I recommend it's "Spybot - Search & Destroy" detects and removes spyware for Windows gets updated on it's detection files frequently. It's like an antivirus program, I have to have it in my windows OS.


LISTAGG: 11g r2 new feature

LISTAGG it's a new aggregate function in Oracle 11g release 2. It performs string aggregation.
LISTAGG can optionally be used as an analytic (i.e. the optional OVER() clause).

LISTAGG Syntax structure:



TIOBE Programming Community Index for November 2010

PL/SQL in 20th in TIOBE Index for November 2010. It's a better position than last month, but it was in 12th place in November 2009!!


Some choices are available:


User Enable Editions troubles and solutions

In Oracle 11g r2 the editions were the main new feature for database developers.

If a user has editions enabled some other user that has nor edition enabled cannot create a synonym to the first user (the one with editions enabled) objects.

You will need to enable also the editions for the second user.

alter user <user2> enable editions; (This clause is not reversible.)

If the schema contains any objects that are not editionable and that depend on editionable type objects in the schema, then you must specify FORCE to enable editions for this schema (otherwise you will get an ORA-38819: user USER2 owns one or more objects whose type is editionable and that have noneditioned dependent objects). In this case, all those objects will become invalid and you need to recompile them.

But be very careful, because you should not have table with object type columns where the object type is in that user (with enable editions)! That's because noneditioned objects like tables cannot depend on editioned objects like object types (you would get an "ORA-04063 table <:table_name> has errors" with those tables).
Solution: move the object types to an user with no "enable editions" set.

BTW (By the way) if you try to create a table depending in an edition object you would get an "ORA-38818 illegal reference to editioned object string.string"
The solution is the same as the above.

Potential Security Issue on Install of Oracle Database and Grid Control

Oracle has identified a security vulnerability affecting the Oracle Universal Installer for Oracle Database Server 11g Release 2 Patchset 1 ( and Oracle Enterprise Manager Grid Control 11g Release 1 ( downloaded before November 16th 2010. This vulnerability may result in the compromise of the Oracle Single Sign-On (SSO) password used to connect to Oracle Support Systems while checking for recommended updates and patches during the initial install of these products.

30 seconds parodies of movies

Because life should not be only work 30 seconds parodies of Movies with bunnies as the protagonists.

update: the link was wrong, sorry about that :-(


In answer to a friend request, just two pointers:
Lucas Jellema rss feed reader with several commentaries to improve the code
Tyler Muth rss producer

Do you know of others?


Last Christmas: versão David Fonseca / Last Christmas: David Fonseca version

David Fonseca num video magnífico (ou melhor 9) com a sua versão da música de natal: "Last Christmas".
Nota: a música somente começa aos 0:15

David Fonseca (portuguese musician) in a fabulous video (or should I say 9) of his version of the "Last Christmas"
Note: the music only start at 0:15

Better "hot patching" on

I had missed this info: With Oracle version it's much less likely to disrupt sessions that are using packages that are recompiled in another session:



JSON (JavaScript Object Notation) is a lightweight data-interchange format.
It's used for communication with javascript (AJAX).
A introduction to the format can be found here.



If you as me didn't knew that google new index is called Caffeine ( :-) ) and what improvement it has brought to the Google search read this post.

For people you do not have the slightest idea how the Google search work I recommend the following video.

What is planned for Oracle Application Express 4.1

For me the most important issues that are planned for APEX 4.1 are:

  • Charting - Provide for chart rendering without using Flash (to enable display on mobile devices).
  • Error Handling - Improve error handling and user-defined exception processing.
  • Development for Mobile Applications – Include themes and HTML templates suitable for smart phones and mobile devices.
  • Interactive Reporting – Allow multiple reports on one page and support pivot queries.
  • Tabular Forms – Allow multiple tabular forms on one page and continue to expand tabular forms validations.
  • Master-Detail-Detail – Allow the generation of pages to support master-detail-detail relationships.
  • Modal Dialogue - Add ability to display a dialog on top of a page (the rest of the page will be grayed out).


How to check the pl/sql web output with cookies

In the previous post "How to check the pl/sql web output" I show how you can check the pl/sql web output in code with minimal initialization.
Today I will show how you can make a cookie emulation or put other CGI environment variables in the pl/sql "web environment" variables.

Steven Feuerstein share advice for Developers video

It's dated from August but it's always interesting and actual


How to check the pl/sql web output

If you use the pl/sql web toolkit sometimes you will want to check the web output that you are creating.
You can use a browse, but maybe you do not have a web server (with the pl/sql gateway) or the EPG configured, or you want to unit test inside PL/SQL or to see the result before pl/sql gateway mess with the http header.

LiveCD Oracle Solaris 11 Express 2010.11 is available

Oracle Solaris 11 Express 2010.11 is now available and a LiveCD version for x86 is provided so administrators have an opportunity to explore its environment without installing it on a system.

Nem todos os alimentos são perigosos fora do prazo

A saber:

Os alimentos em que surge a expressão "consumir de preferência antes de..." (ou "antes do fim de...") podem ser consumidos após o prazo sem risco de intoxicação alimentar, mas "a empresa já não garante" que estejam em "condições normais",(...) "Se calhar, o sabor já não é tão bom. Se calhar, já tem um bocadinho de ranço. Mas não faz mal."


Access security in mod_plsql or EPG

With mod_plsql or EPG (embedded pl/sql gateway) all the procedures (that meet the conditions) are available to be accessed by the web. That could be a security problem if you do not protect your procedure for that.
mod_plsql and EPG (DBMS_EPG) provide two way to deal with that:


Oracle Magazine November/December 2010 available

November/December 2010
BC Cover
Click the image to look inside
Update: direct link for facebook version (it doesn't need subscription info)


XHTML: why?

I agree with Brain Cray that XHTML was/is not really needed and provided no actual benefits.
10 years later and where XHTML get us? It gave work, it gave headaches, ...

Simon Pieters researched the XML-compliance of mobile browsers and concluded
the claim that XHTML would be needed for mobile devices is simply a myth

A Great introduction to PL/SQL

If you want to learn PL/SQL here is a great introduction to PL/SQL written by Mike Smithers.


What people would do without internet?

The Muppets have an answer!

Improving the classics?

As only Muppets can do...

Universidade do Porto no 250º lugar do ranking "Times Higher Education"

Universidade do Porto (U.Porto) no 250º lugar das melhores universidades do ranking "Times Higher Education" (correspondendo ao 106º lugar das europeias)
Ler a notícia

Alternatives for PL/SQL Gateway

A attendee of my presentation on OPP 2010 Brussels notice an error in one URL in my presentation and asked me more info in the alternatives for PL/SQL Gateways.
So I provide here my investigation on that (please be free to help me improve this list) with the distintive features of each alternative.


Brincando com o Zé Pedro

Eu não vi este episódio do Contemporâneos mas a RTP disponibilizou para a gargalhada!

O "vai mas é trabalhar como as pessoas!" à fala com o Zé Pedro dos Xutos.

Nostalgic mood....or maybe not?

Yesterday I remember a music from a computer game...and I found it in Youtube.
The game was Redneck Rampage (from 1997!) and was an "in your face shooter"...the music a "country" rock...
I remembered "Mac Donalds can give my b*tt!" line :-) and the "You can't kill me..."


Google's Logos

Today it's the 115 anniversary of the discovery of the X-rays.
I discovered that by the change in the google logo :-).

If you, like me, are curios about previous Google's logos (BTE they are called Doodles) check the google's logos site (it's not up-to-date - I think it only shows previous ones and not actual ones)

So many Doogles for several countries and I was not able to find one about Portugal.

Inline Database link

Database links it's a feature that I normally use but I'm not used to create them.
When I created them I relayed the connection to the tnsnames file


SQL Navigator 6.4 released

Quest released a new version of SQL Navigator. Mainly it corrects some bugs and redefines the filters use (now you have to save the filter before using it, but stores the filters from session to session).
Warning: don't name you filter using the % sign (doesn't work = bug already reported).

Check the Release Notes.

Oracle SQL Developer 3.0 Early Adopter 1

It's available since October the Oracle SQL Developer 3.0 Early Adopter 1.

Some of the new features are the DBMS Scheduler support, PDF generation from the output and debugging of anonymous blocks of PL/SQL code

Update: links removed -> final version 3.0 available