Solved

NLS_DATE_FORMAT

Posted on 2000-04-20
4
16,380 Views
Last Modified: 2008-03-03
I am using Oracle 8i and I changed the NLS_DATE_FORMAT='MM/DD/YYYY' in the parameter file(init.ora). And when I check the sysdate from SQL*PLUS, it is still showing the date in DD-MON-YY format. But when I check the sysdate from SVRMGR tool, it is showing me the right format (ie MM/DD/YYYY ). I don't know how to work around this problem.
Note: when I use ALTER SESSION SET NLS_DATE_FORMAT= "MM/DD/YYYY" to change the date format for a particular session from SQL*PLUS, I am getting what I want...
0
Comment
Question by:bragkumar
  • 2
  • 2
4 Comments
 
LVL 4

Accepted Solution

by:
syakobson earned 1000 total points
ID: 2736229
NLS_DATE_FORMAT is client centric, not server centric. This way each client can see dates the way he/she needs to. For example clent in Europe is used to dates in DD/MM/YY format while clients in the US are used to MM/DD/YY. Therefore, each client needs to set NLS_DATE_FORMAT on the client box. In Windows, start regedit, go to HKEY_Local_Machine, Software, Oracle and add entry NLS_DATE_FORMAT = 'MM/DD/YYYY'. On Unix set environment variable NLS_DATE_FORMAT.

Solomon Yakobson.
0
 

Author Comment

by:bragkumar
ID: 2736258
I appreicate your immediate help. But i got a question for you.. In this case what is the use of NLS_DATE_FORMAT in parameter file. what is for NLS_DATE_FORMAT in init.ora? I am not clear..... From your answer I guess there is no need change to the parameter file. Am I right?
0
 
LVL 4

Expert Comment

by:syakobson
ID: 2736436
Well,
NLS_DATE_FORMAT is not that straight forward. And explanation I gave you is not entirely true. There is a lot of articles in Oracle's MetaLink on that topic. If you are MetaLink customer check http://support.oracle.com.sg/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=74375.1

NLS_DATE_FORMAT is used if a date format mask is not specified in application code. The effective NLS_DATE_FORMAT is determined by the following (in order of precedence):

1. Session NLS_DATE_FORMAT (via ALTER SESSION command)
2. Client side NLS_DATE_FORMAT (from client environment variables/registry settings)
3. Instance NLS_DATE_FORMAT (from init.ora file)
4. Database NLS_DATE_FORMAT

Session NLS_DATE_FORMAT is set to client side NLS_DATE_FORMAT (explicit or implicit) ONLY if NLS_LANG is set. Another words, if NLS_LANG is set, then session NLS_DATE_FORMAT will be taken from the client. If clent NLS_LANG is set and client NLS_DATE_FORMAT is not, session NLS_DATE_FORMAT will default to DD-MON-YY (and that was exactly what you experienced). If NLS_LANG is not specified on the client side, NLS_DATE_FORMAT will be taken from instance NLS_DATE_FORMAT which is NLS_DATE_FORMAT from INIT.ORA. If NLS_DATE_FORMAT is not set in INIT.ORA, session NLS_DATE_FORMAT will default to DD-MON-YY.

Solomon Yakobson.
0
 

Author Comment

by:bragkumar
ID: 2737763
Thanks a lot Solomon!!!
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Cursors in Oracle: A cursor is used to process individual rows returned by database system for a query. In oracle every SQL statement executed by the oracle server has a private area. This area contains information about the SQL statement and the…
Configuring and using Oracle Database Gateway for ODBC Introduction First, a brief summary of what a Database Gateway is.  A Gateway is a set of driver agents and configurations that allow an Oracle database to communicate with other platforms…
This video explains at a high level with the mandatory Oracle Memory processes are as well as touching on some of the more common optional ones.
Video by: Steve
Using examples as well as descriptions, step through each of the common simple join types, explaining differences in syntax, differences in expected outputs and showing how the queries run along with the actual outputs based upon a simple set of dem…

863 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

24 Experts available now in Live!

Get 1:1 Help Now