15. Dezember 2009

SecureFiles und mehr ... Veranstaltung im Februar 2010

Das letzte Blog-Posting für dieses Jahr gibt es nur auf Deutsch: Ich möchte gerne auf eine Oracle-Veranstaltung, die meine Kollegin Ulrike Schwinn und ich im Februar 2010 durchführen, hinweisen: Im Oracle Developer Day "SecureFiles und das Database Filesystem" wird das Thema unstrukturierte Daten in der Oracle-Datenbank näher betrachtet. Im Detail sind dies Informationen über die in Oracle11g neuen SecureFiles und das in 11g Release 2 neue Database Filesystem. Aber auch verwandte Themen wie die Oracle XML DB, Oracle TEXT (Volltextrecherche) oder einfache Bildbearbeitung (MultiMedia) kommen nicht zu kurz. Wer immer mit CLOB oder BLOB-Datentypen zu tun hat (und wer hat das nicht), sollte mit diesen Informationen etwas anfangen können ...
Die Teilnahme ist kostenlos - also gleich anmelden. Vielleicht sehen wir uns. Ansonsten wünsche ich schon mal frohe Weihnachten und einen Guten Rutsch nach 2010!
The last blog posting in 2009 is only available in german since it is about an event in germany in german language.
Season's greetings ... and see you next year!

8. Dezember 2009

Umlaute "normalisieren": NLSSORT

English title: normalizing "umlauts": The NLSSORT function

Bereits vor zwei Jahren (beim Bloggen vergeht die Zeit doch recht schnell) hatte ich ein Posting über Case- und Umlaut-"insensitive" Suche veröffentlicht. Darin ging es im wesentlichen um die Verwendung der Session-Parameter NLS_SORT und NLS_COMP. Damit ist linguistischen Suche möglich. Heute möchte ich (in einem kurzen Blog-Posting) zeigen, wie man mit expliziter Verwendung der Funktion NLSSORT (diese wird bei der linguistischen Suche implizit genutzt) Strings "normalisieren" kann. Ein Beispiel:
Two years ago (time passes by quickly) I had a posting about Case- and Umlaut-"insensitive" Searches. It was basically about the session-parameters NLS_SORT and NLS_COMP which allow linguistic search capabilities within SQL queries. Today I have a very short blog posting about the explicit usage of the NLSSORT function (the linguistic search uses it implicitly). With NLSSORT you can "normalize" a string value: The string is being converted to lowercase and all umlauts are converted to their base letter. An example:
select nlssort('München á la Carte - and ...: ê,á,ß,ö', 'nls_sort=''binary_ai''') NORMALIZED
from dual
/

NORMALIZED
------------------------------------------------------------------------------
6D756E6368656E2061206C61206361727465202D20616E64202E2E2E3A20652C612C73732C6F00
Die Funktion NLSSORT gibt einen RAW zurück; um zu sehen, was da drin steckt, wandeln wir es mit UTL_RAW.CAST_TO_VARCHAR2 wieder um.
Since NLSSORT returns a RAW value we cast it to a VARCHAR2:
select utl_raw.cast_to_varchar2(
  nlssort('München á la Carte - and ...: ê,á,ß,ö', 'nls_sort=''binary_ai''') 
) NORMALIZED
from dual
/

NORMALIZED
----------------------------------------------
munchen a la carte - and ...: e,a,ss,o
Ich konnte das in einem konkreten Fall schon brauchen - vielleicht auch für euch ...
This was useful for me in a specfic situation - perhaps it is also for you ...

Beliebte Postings