1

如何在 Linq to SQL 中区分大小写的两个字符串(在 where 查询中)?

谢谢。

4

3 回答 3

4

您不能仅在 LINQ to SQL 中执行此操作。从文档中:

一般不支持的 System.String 方法

查询不考虑可能在服务器上有效的 SQL Server 排序规则,因此默认情况下将提供区分区域性、不区分大小写的比较。此行为不同于 .NET Framework 的默认、区分大小写的语义。

这样做的方法是在您自己的查询中指定排序规则:

Select...
From Table
Where Column = "Value" COLLATE SQL_Latin1_General_CP1_CS_AS

请注意,我提供的排序规则指定了区分大小写的匹配 (CS)。

于 2010-04-08T15:09:07.867 回答
3

您必须在 SQL Server(或您使用的任何 DBMS)中使相关字段区分大小写。如果您使用 SQL Server,请查找 Collat​​ion 字段属性,您可以在其中设置区分大小写。

于 2010-04-08T14:59:44.440 回答
2

如何在 Linq to SQL 中区分大小写的两个字符串(在 where 查询中)?

Select * from tblemp Where empname='nAveen' COLLATE SQL_Latin1_General_Cp1_CS_AS
于 2011-05-17T12:34:26.210 回答