Kedze pouzivate oracle tak napr. after logon trigger na urovni db pre session konkretneho usera urobi tieto nastavenia.

CREATE OR REPLACE TRIGGER set_czech_collation AFTER logon ON DATABASE
DECLARE username VARCHAR2(30);
cmmd VARCHAR2(64);
BEGIN
cmmd := 'ALTER SESSION SET NLS_SORT=czech';
username := sys_context('USERENV',   'SESSION_USER');
IF(username LIKE 'VAS_USER')  THEN
  EXECUTE IMMEDIATE cmmd;
END IF;
EXCEPTION
WHEN others THEN
NULL;
END;
/

[EMAIL PROTECTED]  wrote / napísal(a):
Ahoj,
používám spring/hibernate/jetty pro webové služby. problém je, že se připojuji 
k databázi (oracle) která nemá nastavené collation.

Uvedu jednoduchý příklad
            rs = statement.executeQuery("select * from x order by y");
vrátí výsledek setříděný binárně, tedy ABCabc, zatímco
            statement.executeUpdate("ALTER SESSION SET NLS_SORT=czech");
            rs = statement.executeQuery("select * from x order by y");
vrátí stejný výsledek setříděný česky, tedy AaBbCc.

co hledám, je způsob, jak nastavit požadované třídění někde v connection 
stringu nebo connection properties, abych to mohl uvést někde ve 
spring/hibernate konfigurácích nebo property souborech.

díky za jakékoliv nakopnutí správným směrem. rb.


Odpovedet emailem