Wenn Sie SQL Server 2008 verwenden, wäre ein Indexfilter vielleicht Ihre Lösung:
http://msdn.microsoft.com/en-us/library/ms188783 .aspx
So erzwinge ich einen eindeutigen Index mit mehreren NULL-Werten
CREATE UNIQUE INDEX [IDX_Blah] ON [tblBlah] ([MyCol]) WHERE [MyCol] IS NOT NULL