2.4 如何选择ASE字符集使之支持简体中文字符 
  目前在ASE 12.5中支持中文字符的字符集有四种:CP936,EUCGB,UTF-8和GB18030。   其中EUCGB字符集是基于GB2312-80编码规范的,它的EUC (Extended Unix Code)编码范围是第一字节0xA1~0xFE(实际只用到0xF7),第二字节0xA1~0xFE。   CP936字符集是基于GBK编码规范(实际上的国家标准是GB13000-90),是对GB2312进行的扩展,第一字节为0x81~0xFE,第二字节分两部分,一是0x40~0x7E,二是0x80~0xFE。其中和GB2312相 同的区域,字完全相同。   GB18030字符集(国家标准号是GB18030-2000)是2000年3月17日发布的新的中文编码标准。它是GB2312的扩充,采用单/双/四字节编码体系结构,收录了27000多个汉字以及臧文、蒙文、维吾尔文等主要的少数民族文字。Sybase 从ASE 12.5.0.3之后开始支持GB18030字符集。   UTF-8字符集是现有ASCII系统向Unicode转换的一个过渡方案。它使用1-3字节表示一个字符。简体中文的每个字符在utf8中的长度基本上都是3个字节。它的最主要的优点是可以同时支持超过650种语言的字符。缺点是针对中文字符来说,需要增加50%的空间用来存储。还有一个问题是执行sp_helptext显示存储过程体的时候,有可能出现半个汉字。   一般来说,由于EUCGB不支持国标一、二级字库以外的汉字,所以我们推荐用户在服务器端和客户端都使用CP936字符集,或者在ASE 12.5.0.3之后还可以使用GB18030字符集,它可以支持一些比较生僻的汉字。它的不足是只有一种排序方式,即区分大小写的Binary方式。所以,如果需要使用支持中文字符集且不区分大小写的数据库时,就只能使用UTF-8作为服务器端字符集,而客户端使用CP936或GB18030字符集。

解决方案 »

  1.   

    是JSP页面字符集的问题。把<%@ page contentType="text/html; charset=gb2312" %>中的gb2312换为GBK就可以了,我以前也遇到过相同的问题。
      

  2.   

    gbk和gb2312的区别在哪里?页面之间传request应该用哪个?
      

  3.   

    aemon(小乌龟) 
    gbk和gb2312的区别在哪里?页面之间传request应该用哪个?
    ------------
    gbk和gb2312差不多(组长说的), 个人测试两者间可以自由使用.
    页面之间应是设置的吧(contentType="text/html; charset=gbk")