Friday, June 26, 2015

ODCI dynamic table function parser

Supposing you've got data as a text string with "row" and "column" delimiters and you would like to parse out those columns and rows. The external table syntax would actually be great for this, but that requires writing the text out to a file first, and then you can import it back again as columns and rows.

There are various other alternatives using SQL and/or XML manipulations, but one method that I don't see much used is to use the Data Cartridge functionality to in a sense expand the SQL language to do this. This solution is greatly inspired by an OTN forum post I stumbled upon, where Anton Scheffer demonstrates the use of ODCITable* functions.

Monday, June 22, 2015

Escope very early status

Just a brief summary of the status of Escope so far - I know it's very very early and too early to even tell whether it'll become real or not, but anyway ... ;-)

  1. For those who don't know yet, we're trying to see if it is possible to create a conference in Europe like the Kscope conference by ODTUG. See my early thoughts here:
  2. We're gathering feedback from as many European developers as we can via a survey designed to find out if there is a basis for such an Escope conference:
    Please share that link with all your colleagues and network of Oracle developers throughout Europe - the more responses we can get, the more valid conclusions we can make.
  3. As of today (21. june 2015) we have 80 responses - definitely mostly positive, thank you for that :-) And getting valuable information on what the European Oracle developers are looking for. We have started getting in touch with a little of the Hyperion/Essbase/EPM/BI community in Europe as well and hope to get responses from them as well as the DbDev and APEX developers that so far seem to have been the majority of responses. Opinions af all developers are valuable to us.
  4. We have some thoughts on what might be the challenges we have to overcome to make this dream come true. See some discussion points I've made here:
    I invite you all to pitch in with your own opinions and ideas as comments to that blog post.
  5. If you are attending Kscope15 right now, we can discuss the idea of Escope face to face.
    I will be in the exhibition hall nearby the ODTUG social media booth (booth 613) during happy hours monday as well as tuesday:
    - Monday 22. june 17:00 to 17:30 (or 5 PM to 5:30 PM if you prefer ;-)
    - Tuesday 23. june 18:00 to 18:30 (or 6 PM to 6:30 PM)
  6. You can sign up for a newsletter to be kept up to date on the progress of Escope here:
That's about it so far - we don't know yet if this will remain a dream or if it will take off and be a new shining star. You can help just by circulating the news and sharing the survey link as much as you can. Here it is again:

You'll be hearing more of Escope from me, don't worry :-)

Friday, June 19, 2015

How to make dream of Escope come true?

In my last post, I wrote about a dream of a European version of ODTUG Kscope conference - working title "Escope." ;-) We're trying to determine whether it would be feasible to create such a conference - if you haven't already, go and fill out the survey and help us find out if there's basis for the dream. And send the survey link to you colleagues and friends and network - the more of Europe we can cover, the more solid conclusions can be made from the survey.

But what else would it take to make this dream come true? Well, here are some thoughts and opinions and ramblings on the topic - all my own personal opinions, don't shoot anybody else but me for this ;-) And don't misunderstand me - I really really would love for Escope to happen, I'm just trying to figure out how it actually could become more realistically possible than just a dream :-)...

Thursday, June 11, 2015

Feasibility survey of a possible European Kscope-like conference

As most people likely to read this blog will know, I am a great fan of the ODTUG Kscope yearly conference for Oracle developers. In my opinion it is one of the absolute best places for awesome content, presenters, attendees and networking - all wrapped in one high quality package that's fun too.

Some Dutch developers (Erik van Roon, Gert Poel and more) and I had a little twitter discussion some time ago. Some european developers would love to attend Kscope due to the high quality, but they simply can't attend a US based conference, either due to lack of funding or company policy that prohibits travelling far away for conferences. A European version of Kscope we think would have potentially a large number of attendees who would love the ODTUG experience but can't go to Kscope.

We believe there is room for such a conference, even though Europe has great national OUG conferences like UKOUG, DOAG, OUGN, Harmony, BGOUG and more. These also have developer content, but they are not conferences dedicated solely to developers. We think a developer conference could supplement the existing european conferences, not replace them.

But so far that is just a feeling we have. We would like some more facts and figures on how many would be interested in an "ODTUG Escope" conference - somewhat like Kscope but in Europe.

So just in time before Kscope15 starts, here is a feasibility survey on what you would all think about an Escope conference:

Please fill out the survey and give us your opinion about the idea of Escope. That way we can better know whether the idea is stillborn, or whether we have a good idea to present to ODTUG :-)

For further news on the progress of the Escope initiative, sign up for the newsletter at:

Friday, December 19, 2014

DATE row generator with DBMS_SCHEDULER

A recent question on the Oracle-L mailing list was about generating dates in a given period. If you had a string like 'MWF', all Mondays, Wednesdays and Fridays between the from- and to-dates should be generated.

That reminded me of a quiz on I did on using DBMS_SCHEDULER.EVALUATE_CALENDAR_STRING. I had created a table function to test calendar expressions - that might be useful for something similar to what was asked on the mailing list.

So here's a way to generate rows of DATEs using DBMS_SCHEDULER calendaring syntax.

Christmas - A time to give

It's Christmas time... It's a time for giving... It's a time for warm-hearted feelings...

But there are people battling for their lives against cancer, who may not have much energy left to enjoy the holidays. Almost everybody has family or friends whose life has been impacted by cancer. Let us all reach out however we can, help wherever we can, and let good thoughts go out to the victims.

All cancer is terrible - but when the victims are children, it breaks your heart. Young humans suddenly faced with the fact that their lives may be over before they had a chance to really enjoy it.

I have a friend, whose 11 year old daughter was told she has a tumor in the brain right next to the nerve center, where spinal nerves go out to the rest of the body. Impossible place for surgery, survival estimate about 3-5%. Devastating news! It's impossible to understand how that must feel to get such a diagnose.

I'd like to urge everyone to do whatever you can - whether it is just smiles and kind thoughts (that can help too), practical help, or donations to research into cancer cures. There are organizations out there that do wonders in science, as well as wonders in helping families with cancer-struck children.

In the US, you can help Children's Cancer Research Fund at:

If you are in Denmark, you can support Børnecancerfonden here:

Or wherever you are, find your local organization that does similar work:

Let's make a difference this Christmas. Any help helps. Thank you.

Tuesday, November 11, 2014

DOUG problem-knuser brainstorm eftermiddagsworkshop og middag - Tirsdag 2. december


Da hveranden tilmeldte indtil nu bedst kan tirsdag 2. december og de andre også kan den dag, så er det hermed vedtaget at det bliver tirsdag vi mødes, nørder om nummerserier, og får en gang mad og drikke.

Nedenstående er derfor rettet til. Tilmeld jer til mig på kbh {snabel-a} så snart I ved om I kan.

Vi ses!

--- --- --- ---

Som et alternativ til kaffemøderne i den danske Oracle brugergruppe DOUG forsøger vi efter idé fra min kollega Majken Sander og undertegnede et nyt koncept uden præsentationer og foredragsholder, men i stedet lade deltagerne brainstorme og sparre med hinanden omkring at knuse et bestemt problem.

Hos køres en aldrende XAL applikation med data i Oracle. Her skal re-nummereres pseudokey for 600 millioner rows pga. applikationen ikke kan håndtere integers over 32 bit. Det betyder massive updates, men der er bare mange begrænsninger der gør at ikke alle måder at gøre det på er velegnede.

Problemstillingen kan være relevant for rigtig mange og der må være mange der har erfaringer med forskellige måder at udføre sådanne updates effektivt. Hvis vi mødes rundt om et whiteboard og brainstormer idéer omkring lige præcis dén problemstilling, så må det kunne udmønte sig i en stak metoder ud fra vore forskellige erfaringer og som både løser det specifikke problem og kan give inspiration til hverdagen til de fleste af os.

Derfor vil gerne sponsere en sådan problem-knuser brainstorm eftermiddag med efterfølgende 2-retters middag på restaurant som tak for hjælpen. Undertegnede Kim Berg Hansen lægger op til problemet og forklarer begrænsningerne, og så er der fri ping-pong til at udveksle idéer og tanker og erfaringer til at finde en effektiv metode til massiv re-nummerering af dataene, som vi så alle kan lære af.

Det vil foregå centralt i København på Restaurant Maven i Nikolaj Kirke der har mødelokale og god mad. Tidspunkt bliver:
Send tilmelding til mig på kbh {snabel-a} med information om:
  • Navn på deltager(e)
  • Deltager / deltager ikke i middagen efter brainstorm (af hensyn til køkkenet)
  • Evt. særlige madbehov (vegetar, allergiker, el.lign.)
Seneste deadline for tilmelding er dagen før af hensyn til køkkenet, men svar endelig så snart I ved om I kan, så vi ved lidt om hvor mange vi bliver ;-)

Skulle der komme flere tilmeldinger end mødelokalets kapacitet (ca. 25 personer) så bliver det først-til-mølle princippet.

Håber I vil tage godt imod denne form for arrangement og synes det kunne være sjovt at ping-ponge med andre udviklere/DBA'er omkring problemløsning - og så selvfølgelig netværke over en god middag ;-)

Spørgsmål? Så kontakt mig på kbh {snabel-a}

Håber vi ses til en god gang hjernegymnastik :-)