Finally here: Oracle Instant Client 11gR2 for OS X

See the blog post over at Oracle for details, and be sure to send Christopher Jones an email (via the address in his post) stating you're an active user of the client. As Christopher mentions in his post,

You can really help us justify resources for the OS X bundle if you email me letting me know you are a fan. Since Instant Client is a free download, it is tricky for us to know how widely it gets used.

Jump to OTN to download, but please remember to email Christopher as well, if you're interested in seeing the client (more...)

Behavior of Tab Canvases

The behavior of tab canvases ist very interesting, when your form gets more and more tabpages. Let's say, you have only three pages in your tab canvas. (Width Style Property = Fixed)
Forms automatically renders all three pages in the same size. That's what we expected.

In the next step we create a fourth tab:

If there is not enough space for all page-labels in the same size, then we see a first kind of resizing. All labels are readable. But the size of some pages is reduced.

If we create more tabpages:
At one point the label-text shrinks and (more...)

Bug: ORA-00979: not a GROUP BY expression

Bugs and performance degradation are part of database upgrade stories and we have witnessed yet another post-upgrade bug after upgrading our database from Oracle 10gR2 ( to Oracle 11gR2 ( 

Following query (I have simplified the query for the demonstration purpose) was running happily within Oracle 10gR2:

SQL> select * from ( select TRUNC(dt,'MM')
  2          from test
  3          group by TRUNC(dt,'mm'));



However, the same query started to throws an error (ORA-00979) when executed in Oracle 11gR2 (11.2. (more...)

Performance diagnostics with ADFLogger

This post will show how to use the ADF Logger for performance analysis and how to instrument your own code so it shows up in this analysis. Every ADF developer should know, or learn, about the ADF Logger. If you are new to the logger than read up on it at the (more...)

SyntaxHighlighter at Blogger

Running a tech/developer blog means I will be posting source code and other technical text. This requires proper syntax highlighting and use of monospaced fonts. Unfortunately doesn't really support this out of the box so we need to resort to 3rd parties. Alex Gorbatchev created an awesome syntax (more...)

Tables of the Heapish Variety – Tables 101

| Jan 30, 2013

A table is the basic storage unit in an oracle database. A table stores the data that you think of when you think of a database.


A heap table is the default table type in Oracle. When we refer to a table, we are usually refering to a heap table. A heap table is just a table that stores the data in no partiuclar order. It just heaps the data on.


A heap table can be a relational table or an object table. A relational table is a t

One way to find that ORA-942 causing missing grant

| Jan 30, 2013

Hi all,

It has been too long since the last post. It is not that I do not want to, it is just way too busy…

I just came across a small problem where a .NET application written by someone else caused an ugly Stack trace with a ORA-942 (Table or View does not exist) after being moved to the next environment. The error was not there on development, so they asked me what the problem could be. At first I did my compare of grants to the Role I am supposed to use for the application. The problem is (more...)

Big Data: stop the panic, start the project. Do’s and Don’ts.

The question is not anymore if you have a Big Data strategy, the challenge is how are you going to roll it out. What layers of your Information Systems will change? And most importantly: level up the expectations at all levels of the enterprise. Big Data at the Enterprise it’s not about hype and I [...]

Dummy output parameters

Yesterday I encountered a code snippet which taught me something I did not think was possible. But it is, as I'll show in this blogpost. It's not spectacular in any way, just convenient at most. When you need a function or procedure to retrieve some value, you'll start examining the existing code base if a function already exists that does the job. Probably you won't find an exact match, but

Webcast: Using Oracle OLAP data in multiple BI clients. Feb. 5 at 9:00 PST

Want to learn how to connect multiple BI clients such as SAP BusinessObjects Analysis, Cognos and Microsoft Excel to Oracle OLAP, quickly and easily, using the XMLA version of the MDX Provider for Oracle OLAP?  Check out the Oracle webcast on February 5 at 9:00 AM PST.

You will see (more...)

Global DateTimeConverter without separators

We are developing an application where data processing speed is important and users have to enter a lot of dates into the system. This is replacing a legacy Oracle Forms system where people were used to entering dates without any separators. For example they want to enter 120613 for June (more...)

We are back!

OBIEE101 has been restored! Thanks to Nitecruzr for pushing the right buttons at google!

Till Next Time

GoldenGate and transient PK updates

The problem of transient PK updates is well known and comes from the fact that pretty much every replication solution on the market applies changes using row-by-row approach.

To quickly recap the problem, if you have a table like:
SQL> create table tpk (n number primary key);
Table created
SQL> insert into tpk values (1);
1 row inserted
SQL> insert into tpk values (2);
1 row inserted
SQL> commit;
Commit complete
Then executing the following statement...
update tpk set n=n+1
...will result in a transient PK problem since the replication solution will have to decompose it into the following two (more...)

Changing Your PS Database Platform: The Design Phase

In my previous article I described how you might approach planning and requirements gathering for a PeopleSoft database replatforming project.  You would exit that phase with solid RICE object inventories and an idea of any new PeopleTools functionality you will deploy.

I’d like to take you through some thoughts and considerations for the remaining phases (Design, Build, Test, Deploy).  This article will just focus on the Design phase and i'll publish the other articles in the near future.  For this discussion, I’m going to assume we’re doing a PeopleTools upgrade along with the replatforming effort, and we’re (more...)

Active Directory user management with the IdentityStore framework of FMW

With the IdentityStore framework of Fusion Middleware you can change or create any user or role in almost every LDAP server. With this framework the authenticated user change their own password from ADF or in your own ADF Admin page you can create an user with its roles without knowing (more...)

MauDweeb: Database Architects of Dune, Chapter 1

| Jan 24, 2013

This is a flashback to 2007. My Apologies to Frank Herbert and his estate.

Any road followed precisely to its end leads precisely nowhere. Climb the mountain just a little bit to test that it's a mountain. From the top of the mountain, you cannot see the mountain. 

      From MuaDweeb: Family Commentaries by the Princess Irulan 

Summoned! Summoned to meet with the local representatives of the Bene Management. To discus

OBIEE 101 is down

We know about the problem, I'm trying to contact google to get it resolved!

See you Soon

Schema and User 101

| Jan 22, 2013

Schemas and users are frequently used interchangeably as if they were the same thing. For the most part, that's ok. In Oracle the concepts are so tightly coupled that thinking of them as the same thing is not really that far wrong. 

In reality, a user is a database account that is given a password and permissions. A schema is a container, or namespace, for containing schema objects. Schema objects are things like tables, views and indexes.

In Oracle, when a us

How long did Oracle materialized view refresh run?

The LAST_REFRESH_DATE column of the DBA_MVIEWS or the LAST_REFRESH column of the DBA_MVIEW_REFRESH_TIMES indicates the start refresh time. But what if we’d like to find out how long the refresh of the materialized view really takes. Well, we can query the DBA_MVIEW_ANALYSIS.

For Complete Refresh, the refresh duration will be in the FULLREFRESHTIM column of the DBA_MVIEW_ANALYSIS. For Fast Refresh duration, it will be in the INCREFRESHTIM column.

Both values are in seconds.

SELECT mview_name,  (more...)

Five examples why every tablet needs a camera

There are a lot of people who think camera’s in tablets are a bad idea. “Nobody should be allowed to take pictures with a large tablet in front of their face.”

But if you can think outside of the traditional camera box for a moment, and start to think what’s possible if you combine a really portable computer with a decent camera, you’ll soon see interesting new possibilities.

Just a couple examples:

  • Camscanner - turns your tablet or smartphone into a scanner. You take a picture of your notes using camscanner, it enhances the contrast and readability, and truns (more...)