17 October 2012

OOW 2012: Little things make me happy

Yesterday evening we had the annual "We went to OOW and this is what's new in the world we call Oracle" at AMIS. Starting around 5pm and ending around 10pm a lot of information was presented by several AMIS colleagues.
My contribution to the evening was (amongst others) a little bit of new features in SQL and PL/SQL, only a little bit as there is too much to cover in just 20 minutes.
It's the little things that make me happy. What is the little thing that I like?
When you define a table you can assign a default value to a column (here it comes) based on a sequence. Take a look at the following (taken from the presentation Tom Kyte did during OOW):
First a sequence is created, with the resounding name S. Next the table (named T) is created where the column X has a default based on the NEXTVAL of the sequence S.
Just to repeat the line of interest:
x int default s.nextval primary key
How cool is that?
No longer will you need to create a trigger to fill the column with the nextvalue from a sequence, you just declare it this way and you're done.
Maybe it's just syntactic sugar, I don't know (yet) and frankly I don't care. I like the fact that this feature makes it more declarative to populate the primary key (or any other column of course).
I'm happy.

02 October 2012

SQL Developer tip: Don't open the table

One of things I don't like about Oracle SQL Developer is that if you are browsing and clicking on tables, it can automatically open the table on the right side of the IDE.
There is a simple way to switch that off, just heard how to switch this feature off. Navigate to the Preferences settings:
Goto Database >> Objectviewer, and uncheck the tickbox labelled "Open Object on Single Click"
And that's it.

OOW 2012: Is PL/SQL still alive?

Yesterday Bryn Llewellyn, Distinguished Product Manager, did a session called "PL/SQL Enhancements brought by the latest generation of database technology". The room was packed. For the upcoming release of the Oracle 12c database the enhancements were broken into three areas:
  • Improved PL/SQL and SQL interoperability

    In the current version of the Oracle database you needed a Nested Table or Varray Type defined at schema level in order to be able to use it in the TABLE operator. This is no longer necessary, it can be a PL/SQL declared type.
    The types that can be used as bind variables has been extended: Boolean, Nested Tables can be used as bindvariable in Dynamic SQL.
    Subquery Factoring (the With clause if you will) can hold private functions, the use case presented for this: pretty print an integer in K, M, G, T.
    Using userdefined PL/SQL functions in a SQL statement is not advisable, but if you really need to there is a new pragma: PRAGMA UDF. With this pragma the statement is almost as fast as pure SQL.

  • Security

    A new step has been taken to continue on "least privileges", meaning that the user only gets the privileges that are absolutely necessary. A Role can be granted to a PL/SQL unit.

  • Improved programmer usability

    The ability to inspecting the callstack has been improved by the introduction of a new package: UTL_CALL_STACK. The package contains numerous functions to help in this area, such as current_edition and lexical_depth. White listing of program units: restrict which program unit can be called by other program units.

So, is PL/SQL still alive? YES! ALIVE AND KICKING!

27 September 2012

OOW 2012: My Schedule

This will be my third time attending Oracle Open World and I'm really looking forward to the event. It is very hard to make a schedule, there are so many good session available. I thought I'd share my schedule, it might inspire you for your own schedule (or makes it harder to make a choice) and I can look at my schedule without having to login to the schedule builder.

17 July 2012

APEX: Custom Image on Button Bug

When you use a custom template for your APEX application and you want to use an image on a button, you might encounter a small, trivial bug. Thanks to Anthony Rayner and twitter for a simple workaround. The Setting

For the custom theme that is used in the application that I'm working on, an Application Level Substitution string was created. You can define these substitution strings at the application level, available from the application home page.

11 April 2012

Dutch preview event 'Collaborate 12'

'COLLABORATE 12: Technology and Applications Forum for the Oracle Community’ is de grootste Oracle gebruikersgroep conferentie ter wereld en wordt jaarlijks georganiseerd in de Verenigde Staten. Het is hét evenement om bij te zijn wanneer je geïnteresseerd bent niet alleen in Oracle Applications (E-Business Suite, JD Edwards, Siebel, etc.) maar ook in Oracle Technologie in het algemeen, van ontwikkeling tot beheer.
Ook dit jaar zal een aantal Nederlandse Oracle experts een presentatie geven op deze conferentie: Roel Hartman (Logica), Alex Nuijten (AMIS), Arian Stijf (Arven) en Arnoud Roth (Inter Access). Aangezien niet iedereen in de gelegenheid is om naar Las Vegas te gaan voor het bijwonen van deze conferentien, wordt er door Inter Access een Dutch Preview Event georganiseerd. En wel op woensdag 18 april vanaf 17 uur bij Interaccess in Hilversum, waar alle presentaties van deze experts zullen worden getoond. Van Application Development, E-Business Suite Security, SOA tot Oracle Fusion Applications, de onderwerpen zijn zo divers dat je zeker een interessante avond zult beleven.
Aanmelden voor deze preview kan per mail naar info@interaccess.nl. Meer informatie is verkrijgbaar bij Arnoud Roth, bereikbaar op telefoonnummer: 06-54363429
De sprekers en hun onderwerpen:

Alex Nuijten, AMIS

  • Solving Puzzles with SQL: Cheating when playing the game SET
  • Who’s Afraid of Analytic Functions
  • Database Development: SQL Holmes - The Case of the Missing Performance

Roel Hartman, Logica

  • 5 Cool Things You Can Do With HTML5
  • APEX Boot Camp: Striving for Perfection: The Ultimate APEX Architecture
  • Done in 60 Seconds – Creating Web 2.0 Applications Made Easy

Arian Stijf, Arven

  • Securing the E-Business Suite. A Layered Approach
  • From Workflow to BPEL

Arnoud Roth, Inter Access

  • Oracle Fusion Applications Architecture Fundamentals
Linked-in event

19 March 2012

ORA-03113 and Bulk Collect

It can be quite frustrating when you are working on a database package and your session is terminated time and time again and leaves you clueless as too why this is happening.