Skip to Main Content

SQL & PL/SQL

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

Day of week (1-7) and NLS settings

Peter GjelstrupApr 11 2011 — edited Apr 11 2011
This is embarrassing, but I am going nuts here.


Today is monday. Around here, this is the first day of the week.

So,
SQL> select to_char(sysdate, 'd') from dual;

TO_CHAR(SYSDATE,'D')
--------------------
2                   
1 row selected.
Fine, that is probably becuase of my NLS settings:
SQL> select * from nls_session_parameters
where parameter = 'NLS_DATE_LANGUAGE';

PARAMETER                      VALUE                                   
------------------------------ ----------------------------------------
NLS_DATE_LANGUAGE              AMERICAN                                
1 row selected.
Let's change it then, into something where people know that monday is the first day of the week ;)
SQL> alter session set nls_language = german;
Session altered.

SQL> select to_char(sysdate, 'd') from dual;

TO_CHAR(SYSDATE,'D')
--------------------
2                   
1 row selected.
No luck, how about
SQL> select to_char(sysdate, 'd', 'NLS_DATE_LANGUAGE = danish') from dual;

TO_CHAR(SYSDATE,'D','NLS_DATE_LANGUAGE=DANISH')
-----------------------------------------------
2                                              
1 row selected.
Wrong variable, maybe. How about NLS_TERRITORY
SQL> alter session set nls_territory = 'DENMARK';
Session altered.

SQL> select to_char(sysdate, 'd') from dual;

TO_CHAR(SYSDATE,'D')
--------------------
1                   
1 row selected.
Great! - But I don't like to alter session like this, and
SQL> select to_char(sysdate, 'd', 'NLS_TERRITORY = denmark') from dual:
select to_char(sysdate, 'd', 'NLS_TERRITORY = denmark') from dual
                                                             *
Error at line 1
ORA-12702: invalid NLS parameter string used in SQL function
Dang, out of ideas. Am I just on a mission impossible here?


Regards
Peter
BANNER                                                          
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bi
This post has been answered by Frank Kulash on Apr 11 2011
Jump to Answer

Comments

800322
Hello,

In UNIX, I have an application in wich i want to
execute a shell script.
I would like to put that script in the jar file and
be able to execute it from the main application.
Then do it - write an application that can execute a script. But usually, executing a script is something the shell does, so it'll be the shell that needs to be able to read the file. You have to extract it, or you have to manually issue the commands and handle the piping, using Runtime.exec().
807569
Thanks for your answer
I extracted the script and piped it to a "/bin/ksh -e " command

I did not thought to piped it ;)
Thanks a lot
1 - 2
Locked Post
New comments cannot be posted to this locked post.

Post Details

Locked on May 9 2011
Added on Apr 11 2011
6 comments
390,736 views