nls_lang是乙個環境變數,用於定義語言,地域以及字符集屬性。對於非英語的字符集,nls_lang的設定就非常重要。
nls:『national language support (nls)』 當我們設定一種nls的時候實際上我們是為oracle在存放資料時指定了他的語種所特有的一些表達形式,比如我們選擇chinese,那麼它的中文字元如何存放,按什麼規則排序,貨幣如何表示,日期格式也就被設定了。
nls_lang = language_territory.charset
常見的值可以參見oracle database client globalization support
unix下nls_lang是乙個環境變數,windows下nls_lang一般是在登錄檔裡設定的。
unix下的設定
export nls_lang=american_america.we8iso8859p1
windows下為hkey_local_machine\software\oracle\home
x
\nls_lang
如果有多個oracle產品,那麼homex可能就有多個,比如home0,home1...一般都有nls_lang這個註冊項。
在windows下也可以把nls_lang設定成環境變數,但這樣做的比較少,一般還是在登錄檔裡設定。
db也有自己的nls_lang引數,來標識資料庫的語言,地域,字符集。可以通過以下的sql來查得,
select * from v$nls_parameters;
orselect userenv ('language') from dual;
db的nls_lang和客戶端環境變數中nls_lang盡可能的保持一致。
setting the nls_lang environment variable for oracle databases 提供了如何保持一致的方法。
那麼為什麼要保持一致呢?那是因為如果字符集不匹配,有可能在db和client間相互轉換的過程中,出現字元轉換錯誤的情況。比如oracle nls_lang tips中舉的例子。
參考:nls_lang faq
oracle database client globalization support
setting the nls_lang environment variable for oracle databases
oracle nls_lang tips
*****=eof*****=
oracle配製環境變數
安裝好oracle之後,或是安裝之前 前提是你知道你的安裝路徑 要配製好與oracle有關的path 環境變數 比如 oracle sid oracle base oracle home 還要修改一下path 本人是linux 下的oracle11g,簡要的配製如下 vim home oracle ...
Oracle環境變數NLS LANG
nls lang是乙個環境變數,用於定義語言,地域以及字符集屬性。對於非英語的字符集,nls lang的設定就非常重要。nls national language support nls 當我們設定一種nls的時候實際上我們是為oracle在存放資料時指定了他的語種所特有的一些表達形式,比如我們選擇...
Linux配置Oracle環境變數
一 當前客戶端有效 比如 securecrt乙個視窗,當前有效 在當前的shell bash 或其子shell bash 下是有效的,shell關閉了,變數也就失效了,再開啟新shell時就沒有這個變數 oracle安裝目錄 注意 目錄最好使用雙引號區分 export oracle home hom...