Zum Inhalt springen

Oracle: NLS

Aus Wikibooks


Oracle bietet verschiedene Möglichkeiten, eine Client-Session zu parametrisieren, um auf länderspezifische Besonderheiten Rücksicht zu nehmen. Beim nächsten Connect müssen Änderungen an den Session-Parametern erneut ausgeführt werden.

 ALTER SESSION SET nls_language = 'German';

Dieser Parameter bestimmt die Sprache, in der Server-Meldungen ausgegeben werden.

 ALTER SESSION SET nls_territory = 'Germany';

Durch diesen Parameter werden verschiedene andere Parameter verändert. So wird z.B. das Format der Datums- und Uhrzeit-Ausgabe, sowie die Zeitzone festgelegt. Diese Einzelparameter kann man anschließend trotzdem noch individuell verändern.

 ALTER SESSION SET TIME_ZONE = '-1:0';
 ALTER SESSION SET nls_date_format = 'dd.mm.yyyy hh24:mi:ss';
 ALTER SESSION SET NLS_NUMERIC_CHARACTERS = '.,';

Das erste Zeichen der NLS_NUMERIC_CHARACTERS legt fest, ob ein Dezimalpunkt oder ein Komma ausgegeben werden soll. Das zweite Zeichen legt fest, mit welchen Zeichen die Abtrennung der Tausender-Stellen vorgenommen wird.

Beispiel:

SQL> ALTER SESSION SET NLS_NUMERIC_CHARACTERS = ',.';

Session wurde geändert.

SQL> select to_char(1234.56,'999g999d999') zahl from dual;

ZAHL
------------
   1.234,560

SQL> ALTER SESSION SET NLS_NUMERIC_CHARACTERS = '.,';

Session wurde geändert.

SQL> select to_char(1234.56,'999g999d999') zahl from dual;

ZAHL
------------
   1,234.560


Anführungszeichen ausgeben

 SELECT 'Er sagte: "Es reicht."' FROM dual;
 SELECT 'das war' 's' FROM dual;  
 -- nach war kommen 2 Anführungszeichen ohne Leerzeichen dazwischen