成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Oracle 8i中字符集亂碼問題的分析與解決

數據庫 Oracle
我們今天主要和大家討論的是Oracle 8i中字符集亂碼問題,以及如何對這些問題的解決與分析,下面就是文章的具體內容。

以下的文章主要講述的是Oracle 8i中字符集亂碼的相關問題的分析以及其具體的解決辦法,其中包括Oracle 8i中字符集亂碼問題的詳細描述,以及相關問題的詳細分析,以下就是文章的具體描述。

一、問題描述

SQL Plus WorkSheet是一個窗口圖形界面的SQL語句編輯器,對于那些喜歡窗口界面而不喜歡字符界面的用戶,該工具相對SQL/PLUS受到了很大的歡迎。但從Oracle 8i以后,如果安裝Oracle 8i時選取的是別于英語的字符集,對于我們中國,通常會選取簡體中文字符集(ZHS16GBK),安裝成功后,運行SQL Plus WorkSheet程序,會出現所有的中文顯示以及查詢結果均為亂碼的情況。

二、問題分析

最初出現該問題,首先懷疑就是安裝時字符集設置有問題,也就是說沒有設置正確的簡體中文字符集。首先檢查數據庫字符集,在SQL/PLUS中,運行下面的SQL語句,檢查所連接數據庫的字符集:

 

  1. SQL> select userenv('language') from dual;  
  2. USERENV('LANGUAGE')  
  3. SIMPLIFIED CHINESE_CHINA.ZHS16GBK  

查詢結果發現數據庫安裝時所選字符集為簡體中文ZHS16GBK,說明安裝時字符集設置完全正確。第二步開始懷疑是用戶客戶端字符集問題,檢查客戶端注冊表,打開注冊表編輯程序(RegEdit),在HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/NLS_LANG,發現Oracle客戶端字符集為AMERICAN_AMERICA.ZHS16GBK,設置也完全正確,可以排除是客戶端字符集設置錯誤的問題。

同時還有一個現象就是在同一個客戶端機器上SQL/PLUS中的查詢字符集顯示完全正常,這也說明不是字符集設置問題,而是系統程序SQL/Plus Worksheet的問題。

在Oracle 8i以前的版本中,從來沒有出現過這樣的情況,這應該和Oracle版本有關,我們知道Oracle 8i和它前面的版本一個顯著的區別就是大部分的Oracle系統程序,現在均采用Java驅動,其實這也就是產生Oracle 8i字符集亂碼問題的根本所在。

非Java驅動的程序,如SQL*Plus,有一個系統參數NLS_LANG,該參數在UNIX系統中設置在環境變量中,在Windows操作系統中設置在注冊表中,這個參數決定了客戶端應用程序的字符集。而對于基于Java應用的程序,如現在遇到的SQL*PLus Worksheet,NLS_LANG參數對這類程序是不起任何作用的。

三、解決方案

找到了問題產生的原因后,下面來討論如何解決該問題。對于Oracle Enterprise Manager中的所有工具,有一個配置文件名為dbappscfg.properties,修改該文件即可解決上述問題。這個文件的位置在$ORACLE_HOME\sysman\config目錄下,用任何的文本編輯器打開該文件,在這個文件里面,找到這樣一項,

 

  1. SQLPLUS_NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1  

去掉注釋符#,同時將其修改為SQLPLUS_NLS_LANG=AMERICAN_AMERICA.ZHS16GBK。

對于Windows操作系統,還需要修改一項,在文件中找到# SQLPLUS_SYSTEMROOT=c:\\WINNT40,去掉注釋符,將其修改為你所在機器的操作系統主目錄。如操作系統的主目錄在D盤的Winnt下,則將其修改為 SQLPLUS_SYSTEMROOT=d:\\WINNT。

對于后面一項的修改只對Windows操作系統進行,對UNIX操作系統則不需要。如果在Windows操作系統中不修改該項,在Oracle Enterprise Manager中,連接系統時,會提示如下的錯誤:

ORA-12560 TNS:protocol adapter error

或者

 

  1. ORA-12545 Connect failed because target host or object does not exist  

修改完成后,保存文件,退出編輯。重新連接SQL PLUS Worksheet,Oracle 8i字符集亂碼問題得到解決,顯示正確的簡體中文字符集。

文章出自: http://database.51cto.com/art/200703/43583.htm

【編輯推薦】

  1. Oracle左連接left join的實際操作步驟
  2. Oracle創建存儲過程不得不看的方案
  3. Oracle安裝與配置的實際操作步驟
  4. Oracle存儲結構之Oracle物理存儲結構
  5. Oracle數據庫的系統中6個經驗原則
責任編輯:佚名 來源: programbbs
相關推薦

2010-05-05 17:29:40

Oracle 8i

2010-04-21 16:07:16

Oracle 8i

2010-03-30 14:53:42

Oracle 8i

2009-07-01 00:23:40

MySQL字符集亂碼

2010-04-30 10:16:22

Oracle字符集

2010-04-13 13:41:47

Oracle 字符集

2009-07-29 13:42:04

Oracle中文顯示

2010-04-13 13:11:34

Oracle漢字顯示

2011-04-11 10:59:33

Oracle字符集

2011-04-11 11:05:12

Oracle字符集

2010-05-06 14:40:59

Oracle字符集

2010-04-13 12:32:38

Oracle字符集

2010-05-17 10:01:09

MySql字符集

2009-11-30 12:58:04

PHP字符集編碼

2009-01-06 09:14:08

8i9ioracle

2009-11-20 16:52:35

Oracle字符集

2011-05-20 13:24:39

oracle字符集

2010-06-11 16:46:20

MySQL5

2010-04-28 17:29:07

Oracle字符集

2010-05-07 10:06:10

Oracle PL D
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久一级免费视频 | 欧美久久一区 | 国产精品一区二区在线 | 最新日韩在线视频 | 久久久久国产精品一区二区 | 久久精品91久久久久久再现 | 国产精品18hdxxxⅹ在线 | 欧美日韩在线一区 | 操操操日日日 | 日韩欧美中文字幕在线视频 | 干狠狠 | 99re在线视频 | 国产视频第一页 | 亚洲国产一区二区三区四区 | 91精品国产综合久久福利软件 | 午夜爽爽爽男女免费观看影院 | 99久久免费精品 | 麻豆changesxxx国产 | 中文字幕国产视频 | 欧美一区精品 | 男女在线免费观看 | 久久精品美女 | 免费成人国产 | 亚洲成人av在线 | 久草电影网 | 日韩一区二区在线播放 | 日韩在线不卡 | 久久久久久久久久久久久9999 | 亚洲一区日韩 | 日韩精品在线观看一区二区 | 91精品国产高清久久久久久久久 | 人人干人人干人人干 | 天天插天天射天天干 | 久久久久久久久久久一区二区 | 亚洲人成人一区二区在线观看 | 国产精品一区二区无线 | 91精品一区 | 欧美三级在线 | 中文在线一区二区 | 欧美成人综合 | 日本在线小视频 |