允许不同大小写的 SQL 唯一约束

问题描述

我们在 sql 表中的 varchar 字段上有一个 UNIQUE 约束。但希望它允许大小写变化。因此,MoneyBeltmoneyBelt 将被允许作为唯一值。这可能吗?

解决方法

感谢您的评论。这让我找到了答案。

ALTER TABLE [dbo].[Somedata] ALTER COLUMN ItemName
    varchar(30) COLLATE SQL_Latin1_General_Cp1_CS_AS NOT NULL
GO

这允许约束区分大小写。请注意 CSSQL_Latin1_General_Cp1_CS_AS 部分。