轉載請在文章顯眼位置注明出處:https://www.cnblogs.com/sunshine5683/p/10036321.html
今天在plsql連接oracle時候報錯提示“數據庫字符集和客戶端字符集(2%)是不同的,字符集轉化可能會造成不可預期的后果”如下圖:
經過查閱資料發現數據庫編碼與客戶端編碼問題,然后通過以下命令順利解決:
這段引用於:https://blog.csdn.net/t_wangjiyang/article/details/79020173
問題描述:本地連接服務器oracle數據庫時,提示(數據庫字符集和客戶端字符集(2%)是不同的,字符集轉化可能會造成不可預期的后果) 問題原因:問題出在oracle服務端的字符集不支持中文導致。 可以通過: sselect * from nls_database_parameters; 命令可以查看服務端的使用的字符集。 查詢結果中,NLS_CHARACTERSET的值就是字符集 解決步驟如下 1、ssh登錄,切換到oracle用戶 切換用戶命令:su -oracle 之后用sqlplus登錄oracle,命令: sqlplus /nolog connect /as sysdba 2、更改字符集 首先 sqlplus登錄后,關閉oracle數據庫 1.shutdown immediate ; 2.startup mount ; 3.alter system enable restricted session ; 4.alter system set JOB_QUEUE_PROCESSES=0; 5.alter system set AQ_TM_PROCESSES=0; 6.alter database open ; 7. alter database character set INTERNAL_USE ZHS16GBK; 8.shutdown immediate ; 9.startup ; 注:第七步報錯可修改成:alter database character set INTERNAL_USE ZHS16GBK;
此處確實如上面所說,報錯了,使用第七步的修改語句順利執行
此時連接數據庫,不再提示,說明編碼已經修改
到此,問題解決!