我有个表,我想在查询的时候区分大小写。看见网上有这样的提示
select * from a where a=’AbCdE’ collate Chinese_PRC_CS_AI--区分大小写 
select * from a where a=’abCdE’ collate Chinese_PRC_CI_AI--不区分大小写 
但是我是将表读入到缓存里面的。
   DataTable dt = (DataTable)System.Web.HttpContext.Current.Application["Subject"];
   DataRow[] dr = dt.Select("Code collate Chinese_PRC_CS_AI='AA'");
就报这样  
    语法错误:“collate”运算符后缺少操作数。
我在数据库里面直接写查询语句是正确的。
有谁知道这是什么原因吗?

解决方案 »

  1.   

    DataRow[] dr = dt.Select("Code collate Chinese_PRC_CS_AI='AA'"); 
    Select函数里不支持这样复杂的语法吧
      

  2.   

    DataRow[] dr = dt.Select("Code collate Chinese_PRC_CS_AI='AA'"); 
    Select函数里不支持这样复杂的语法吧那该怎么做呢?
      

  3.   

    dt.CaseSensitive = true;
    就可以了。好像确实不能用collate Chinese_PRC_CS_AI
      

  4.   

    collate Chinese_PRC_CS_AI 是 MS Sql Server的特有语法!