Re: [問題] Oracle - 字元儲存在Varchar2內的代碼
※ 引述《gimmy731031 (yuancheng)》之銘言:
: 標題: [問題] Oracle - 字元儲存在Varchar2內的代碼
: 時間: Sat Sep 24 14:43:23 2011
: --
: ※ 發信站: 批踢踢實業坊(ptt.cc)
: ◆ From: 218.211.83.106
: → iFEELing:TRY RAWTOHEX() 09/24 16:50
: → gimmy731031:樓上大大誤會我的意思了~我的意思是Oracle是用什麼代 09/24 17:55
: → gimmy731031:碼,不是指編碼方式。eg:'!'是用0000000000000021存入 09/24 23:57
: → gimmy731031:想確定那串代碼是什麼@@" 09/25 00:36
: → gimmy731031:回饋一下鄉民 預設值是UTF-8 可用SQL與法看出 09/27 21:45
http://www.asciitable.com/
1. '!' 就是 0x21 ...
2. Oracle default charset 依照你安裝時的設定決定,
沒有特別指定的話 Oracle 會依據環境變數決定。
比如在正體中文Windows上安裝,charset 很有可能是 ZHT16MSWIN950
而 National Charset 則通常會是 AL32UTF8 (?
如果你裝的是 UN*X 則有可能你的 Charset 會是 UTF-8
3. 你的字元(character) 存進 Oracle 的時候,Driver會依據 client/server 端
的 NLS_LANG 決定要轉成什麼樣的編碼(或不轉)再存進資料庫。
4. RAWTOHEX() 幫你把原始資料(RAW) 的 BYTE 轉成 十六進位方式 (HEX) 顯示給你看
5. 在 UTF-8 當中 '!' 也是 0x21 , 因為 ascii 的字在 UTF-8 中幾乎都是原字碼
6. 你可以用 RAWTOHEX 看看把中文字存進欄位後會讀什麼出來。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.46.118.40
※ 編輯: iFEELing 來自: 114.46.118.40 (09/29 00:14)
推
09/29 22:15, , 1F
09/29 22:15, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):