转载请在文章显眼位置注明出处: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;
此处确实如上面所说,报错了,使用第七步的修改语句顺利执行
此时连接数据库,不再提示,说明编码已经修改
到此,问题解决!