|
|
|
|
|
|
|
Re: string to date [message #600057 is a reply to message #600043] |
Thu, 31 October 2013 05:38  |
Solomon Yakobson
Messages: 3305 Registered: January 2010 Location: Connecticut, USA
|
Senior Member |
|
|
NLS settings are client side, not server side settings. Assume your application issues:
TO_CHAR(TO_TIMESTAMP('2013-12-04 11:35:54.89','YYYY-MM-DD HH24:MI:SS.FF2'),'YYYY-MON-DD HH24:MI:SS.FF2')
Now, result will show MON as DEC when your application is run by client in the US:
SQL> alter session set nls_language=american;
Session altered.
SQL> select TO_CHAR(TO_TIMESTAMP('2013-12-04 11:35:54.89','YYYY-MM-DD HH24:MI:SS.FF2'),'YYYY-MON-DD HH24:MI:SS.FF2') from dual;
TO_CHAR(TO_TIMESTAMP('2
-----------------------
2013-DEC-04 11:35:54.89
SQL>
However, when your application is run by client in Turkey MON will show up as ARA (december is aralik in turkish):
SQL> alter session set nls_language=turkish;
Session altered.
SQL> select TO_CHAR(TO_TIMESTAMP('2013-12-04 11:35:54.89','YYYY-MM-DD HH24:MI:SS.FF2'),'YYYY-MON-DD HH24:MI:SS.FF2') from dual;
TO_CHAR(TO_TIMESTAMP('2
-----------------------
2013-ARA-04 11:35:54.89
Now most of the time this is a good thing since you do want your clients to see data the way clients are accustomed to. But if, for example, you want application users to see dates in same language regardless of client side settings you could use that tghird parameter in TO_CHAR function. Now both client in Turkey and in the US (and anywhere else) will see:
SQL> alter session set nls_language=turkish;
Session altered.
SQL> select TO_CHAR(TO_TIMESTAMP('2013-12-04 11:35:54.89','YYYY-MM-DD HH24:MI:SS.FF2'),'YYYY-MON-DD HH24:MI:SS.FF2','NLS_DATE_LANGUAGE=AMERICAN') from dual;
TO_CHAR(TO_TIMESTAMP('2
-----------------------
2013-DEC-04 11:35:54.89
SQL> alter session set nls_language=american;
Session altered.
SQL> select TO_CHAR(TO_TIMESTAMP('2013-12-04 11:35:54.89','YYYY-MM-DD HH24:MI:SS.FF2'),'YYYY-MON-DD HH24:MI:SS.FF2','NLS_DATE_LANGUAGE=AMERICAN') from dual;
TO_CHAR(TO_TIMESTAMP('2
-----------------------
2013-DEC-04 11:35:54.89
SQL>
SY.
|
|
|