Sql-Server
唯一列是否可以包含多個空值 SQL Server 2008
我想將 Oracle 表 A 中包含的數據遷移到 SQL Server。表 A 包含具有唯一約束但有多個空值的列*CIN 。*問題是 SQL Server 拒絕數據。有什麼解決方法嗎?
您可以使用過濾索引從考慮唯一性的考慮中刪除 NULL 值。您將首先刪除現有的
UNIQUE CONSTRAINT
,然後將其替換為UNIQUE INDEX
. 這兩個對象本質上是相同的,因為 aUNIQUE CONSTRAINT
通過 a 實際存在UNIQUE INDEX
(用於創建列約束的文件UNIQUE
狀態是“通過使用唯一索引為指定列或列提供實體完整性的約束。”)。CREATE UNIQUE NONCLUSTERED INDEX index_name ON SchemaName.TableA (CIN ASC) WHERE [CIN] IS NOT NULL;