mysql没有用过.不过, 对于mssql而言, 排序规则不决定字符集, 字段的类型才决定字符集.
排序规则决定的是数据的顺序,是否区分大小写等等.
mssql有两种编码, 一种是unicode, 对应的类型是nchar/nvarchar/ntext, 它使用unicode编码, 可以保存多国文字而不会有乱码.
另一种是varchar/char/text这类的非unicode编码字段, 它使用的编码由客户端传递过来的代码页确定. 在这种类型的字段中, 无论你怎么设置排序规则, 同一台客户端(或者是同类系统的客户端)传进来的编码的解析不会是乱码, 便在另一系统下, 有可能代码页转换会出错, 就会出现乱码.
排序规则决定的是数据的顺序,是否区分大小写等等.
mssql有两种编码, 一种是unicode, 对应的类型是nchar/nvarchar/ntext, 它使用unicode编码, 可以保存多国文字而不会有乱码.
另一种是varchar/char/text这类的非unicode编码字段, 它使用的编码由客户端传递过来的代码页确定. 在这种类型的字段中, 无论你怎么设置排序规则, 同一台客户端(或者是同类系统的客户端)传进来的编码的解析不会是乱码, 便在另一系统下, 有可能代码页转换会出错, 就会出现乱码.
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货