只要保持客户端和 服务端的 编码是一致的 1.你看看 数据库服务器字符集select * from nls_database_parameters, 客户端字符集环境select * from nls_instance_parameters,其来源于v$parameter 客户端的字符集要求与服务器一致,才能正确显示数据库的非Ascii字符。如果多个设置存在的时候,alter session>环境变量>注册表>参数文件
字符集要求一致,但是语言设置却可以不同,语言设置建议用英文。如字符集是zhs16gbk,则nls_lang可以是American_America.zhs16gbk2.改数据库编码 Oracle10G可以采用下面的方法: connect system as sysdba ; shutdown immediate ; startup mount ; alter system enable restricted session ; alter system set JOB_QUEUE_PROCESSES=0; alter system set AQ_TM_PROCESSES=0; alter database open ; alter database character set internal_use ZHS16GBK ; shutdown immediate ; startup ; 以上做完后 我建议你把库表先删掉 重新倒库 应该可以了
参考,看看你客户端字符集是什么?
楼上说的我都试过没有解决
我现在想知道怎么在pojo类中直接转码
现在在页面out输出在转码页面也可以显示中文了
不过蛮麻烦
所以想在pojo中直接转码
1.你看看
数据库服务器字符集select * from nls_database_parameters,
客户端字符集环境select * from nls_instance_parameters,其来源于v$parameter
客户端的字符集要求与服务器一致,才能正确显示数据库的非Ascii字符。如果多个设置存在的时候,alter session>环境变量>注册表>参数文件
字符集要求一致,但是语言设置却可以不同,语言设置建议用英文。如字符集是zhs16gbk,则nls_lang可以是American_America.zhs16gbk2.改数据库编码
Oracle10G可以采用下面的方法:
connect system as sysdba ;
shutdown immediate ;
startup mount ;
alter system enable restricted session ;
alter system set JOB_QUEUE_PROCESSES=0;
alter system set AQ_TM_PROCESSES=0;
alter database open ;
alter database character set internal_use ZHS16GBK ;
shutdown immediate ;
startup ;
以上做完后
我建议你把库表先删掉 重新倒库
应该可以了