在SQL Server中,选择char(1)' A'而不是' a'

时间:2014-07-08 16:28:03

标签: sql-server-2008

我使用的是SQL Server 2008 R2。

我有一个包含数据类型char(1)的列的表。

在表格中使用' A'有一个含义,而' a'有不同的含义。

如何仅查询' A'并且没有收到' a'?

的值

我在MSDN上搜索并找到了W3Schools。我无法改变以适应我的目的。

由于

1 个答案:

答案 0 :(得分:5)

这是因为SQL Server在默认情况下不区分大小写。

添加"收集Latin1_General_CS_AS"查询:

SELECT * FROM tableName WHERE columnName = 'a' COLLATE Latin1_General_CS_AS

或更改表格中列的定义:

ALTER TABLE tableName
ALTER COLUMN columnName CHAR(1)
COLLATE SQL_Latin1_General_CP1_CS_AS