Detta är ett långvarigt klagomål om SQL Servers unika begränsningar/index. Den bästa lösningen är att skapa en vy med schemabinding och sedan sätta ett unikt index på den kolumnen:
Create View dbo.MyUniqueColView
With SchemaBinding
As
Select MyColToBeUnique
From MyTable
Where MyColToBeUnique Is Not Null
GO
Create Unique Clustered Index IX_MyTable_MyColToBeUnique On MyUniqueColView ( MyColToBeUnique )