我的数据库是在别的地方导入的,在jsp页面显示数据库数据的时候,以前数据库里存在的数据显示时没有乱码,但是新加入的数据有乱码问题,而且只有姓名那个字段是乱码,希望能有人给我一些指导,小弟先谢谢啦。

解决方案 »

  1.   

    设置下你数据库的编码方式,改为UPF-8
      

  2.   

    http://topic.csdn.net/u/20071023/11/8604a315-58cc-47a6-a46a-b4878f161ba6.html转:更改数据库默认环境:  
    或把数据库放在中文系统,处理完排序规则后再导入:  两个不同的库 A库的排序规则是SQL_Latin1_General_CP1_CI_AS   
    B 库的排序规则是 Chinese_PRC_CI_AS   现在A 库有一部分表的数据需要同步到 B来,   
    由于排序规则不一样,A 库中包含中文的数据(类型:varchar,char) 同步到B库中时出现乱码,两个库的排序规则都不能改动,数据类型不改为:NVARCHAR   
    有没有好的办法让A库到B库包含中文的数据不乱码   
    ---------------------------------------------------------------   那就只能在B库的表创建时,为将要包含中文的列指定排序规则为Chinese_PRC_CI_AS。   
    ---------------------------------------------------------------   并不是让你修改整个库的排序规则,只是设置表中个别字段的排序规则。   
    ---------------------------------------------------------------   试试:   
    bcp 从源库导出到文件, 用/N参数   
    然后用bcp导入到目的表, 也用/N参数   对于非unicode数据, 乱码是一种解码错误的表现, 编码按照输入者的系统的编码存放到数据库, 在调用者的系统上, 如果这个编码不能被正确识别(一般是找不到对应的代码页, 或者解码规则不同), 则出现的是乱码.   对于查询分析器和ODBC查询不正常, 这个是因为进行了"字符数据的转换"   你试试在查询分析器的工具--选项--连接中, 把"执行字符数据转换"的选择去掉, 确定后, 重新启动查询分析器, 再做你的测试, 这样应该就是正常的了.   ODBC查询, 在建立DSN的时候, 一样可以设置"执行字符数据转换"这个选项的   另外, 你试试用sql的导入/导出向导.   
    复制的方式选择"在两个sql server数据库之间复制对象和数据"   最后一步的设置中, 把创建目的对象的选择取消, 保证选择了"应用排序规则", 复制所有对象也取消, 单击对象自己选择要复制的对象   
    其他的设置自己看着办吧, 一般可以不选, 因为只是复制数据 
      

  3.   


    不,懂;帮,顶;学,习;赚,分。
    虽然这么回贴可能会被删除。
    谁他妈的删除了就是个王八蛋。
    强烈抗议CSDN这种即当婊子又想立贞洁牌坊的恶劣行为!!!
    有本事,就封杀我!!!理由在这里:
    他妈的一帮管理员有神经病啊???
    http://topic.csdn.net/u/20110422/10/1a381057-7a7b-41d9-8969-ad1f5b77f24a.html?38665