MS SQL Server 不会忽略空值并将其视为违反 UNIQUE KEY 约束,但我知道 UNIQUE KEY 与接受空值的主键不同。
Violation of UNIQUE KEY constraint 'AK_UserName'. Cannot insert duplicate key in object 'dbo.users'. The duplicate key value is (<NULL>).
The statement has been terminated.
谁能帮我解决这个问题?
最佳答案
你可以像这样创建一个忽略空值的唯一索引
CREATE UNIQUE NONCLUSTERED INDEX idx_col1
ON dbo.MyTable(col1)
WHERE col1 IS NOT NULL;
关于sql-server - Mssql 中 UNIQUE KEY 约束的重复空值违规,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31947263/