zoukankan      html  css  js  c++  java
  • 在linq语言中,不能准确按拼音排序(转)

     在项目中,利用OrderBy/OrderByDescending, ThenBy/ThenByDescending这4个方法排序时,发现了这样的问题:在本机测试,能正确按拼音排序;但是放上服务器是,就不能正确的按拼音排序了。
          原来OrderBy/OrderByDescending, ThenBy/ThenByDescending中若是LinqToSql的话,就需要看下数据库机器得sql是否为中文版的?若数据库是英文版,就有可能出现不能正确的按拼音排序的情况,这时候,可以通过修改数据库属性来达到按拼音正确排序:打开SQL Server Management Studio,选择对应的数据库,右击选择属性(R),点击选项(Options),第一个排序规则(Collation),请选择 Chinese_PRC_CI_AS。

    PS:

     排序规则名称由两部份构成,前半部份是指本排序规则所支持的字符集。   
      如:   
        Chinese_PRC_CS_AI_WS     
      前半部份:指UNICODE字符集,Chinese_PRC_指针对大陆简体字UNICODE的排序规则。   
      排序规则的后半部份即后缀   含义:     
        _BIN   二进制排序     
        _CI(CS)   是否区分大小写,CI不区分,CS区分   
        _AI(AS)   是否区分重音,AI不区分,AS区分      
        _KI(KS)   是否区分假名类型,KI不区分,KS区分    
           _WI(WS)  是否区分宽度   WI不区分,WS区分    
        
      区分大小写:如果想让比较将大写字母和小写字母视为不等,请选择该选项。   
      区分重音:如果想让比较将重音和非重音字母视为不等,请选择该选项。如果选择该选项,比较还将重音不同的字母视为不等。   
      区分假名:如果想让比较将片假名和平假名日语音节视为不等,请选择该选项。   
      区分宽度:如果想让比较将半角字符和全角字符视为不等,请选择该选项

  • 相关阅读:
    【转】如何高效地阅读技术类书籍与博客
    测试站点大全
    【转】软件测试面试- 购物车功能测试用例设计
    div+css 定位浅析
    C# Enum,Int,String的互相转换
    sqlserver 空间数据类型
    系统学习sqlserver2012 一
    sql查询数据库中所有表的记录条数,以及占用磁盘空间大小。
    linux网站推荐
    匿名用户访问sharepoint2010中的列表
  • 原文地址:https://www.cnblogs.com/liuyuanhao/p/4507807.html
Copyright © 2011-2022 走看看