[討論] 關於oracle SQL 的問題

看板Database作者 ( )時間8年前 (2016/01/04 12:15), 8年前編輯推噓0(0011)
留言11則, 2人參與, 最新討論串1/1
各位好 最近使用這個工具時出現了一些問題,google找不到資料,在這邊請各位幫幫忙 原始的情況 遠端DB使用ISO-8859-1的編碼 把developer抓下來之後,查詢client的編碼也是iso-8859-1 遇到中文字,將文字轉換成iso-8859-1編碼後再貼至工作表 執行後可以正常的對資料庫做查詢跟插入 最近因為有些中文字此編碼無法支援 將欄位改成NVarChar後 1. 在工作表上想要新增資料,遇到中文字,插入後都會是???(亂碼) 轉換成UTF-8編碼後再用工作表插入也是一樣 試過在文字的前面加上N跟未加上N,都一樣是??? 2. 如果以這個欄位為條件搜尋,會無法撈出資料 可是全部搜尋,此欄位的中文字可以正常顯示 請問各位發生這個情況的原因可能是什麼? 有沒有什麼方法可以解決呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 211.22.92.217 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1451880952.A.21C.html ※ 編輯: sthermit (211.22.92.217), 01/04/2016 17:37:07 ※ 編輯: sthermit (211.22.92.217), 01/04/2016 17:37:48

01/06 10:49, , 1F
請問工作表是指excel?另外client的nls_lang設定為何?
01/06 10:49, 1F

01/06 10:49, , 2F
以及在oracle資料庫當你把欄位modify成nvarchar2時,
01/06 10:49, 2F

01/06 10:49, , 3F
此時該table column的所有字自動會convert 成nvarchar2
01/06 10:49, 3F

01/06 10:49, , 4F
的內碼
01/06 10:49, 4F

01/06 10:51, , 5F
要確認該欄位字的內碼及編碼可以利用select dump(colum
01/06 10:51, 5F

01/06 10:51, , 6F
n_name,1016),column_name frim table 查看
01/06 10:51, 6F

01/07 19:14, , 7F
你的client軟体也要是iso-8859-1然後可以"看到"中文,你的
01/07 19:14, 7F

01/07 19:15, , 8F
中文就不會有問題,而user看到的??是因為iso-8859-1轉成
01/07 19:15, 8F

01/07 19:16, , 9F
user軟体用的編碼沒有對應的字,所以顯示???
01/07 19:16, 9F

01/07 19:20, , 10F
oracle有提供一個軟体可看字形檔lbuilder,轉換後對應不到
01/07 19:20, 10F

01/07 19:20, , 11F
就會顯示???了
01/07 19:20, 11F
文章代碼(AID): #1MYV7u8S (Database)