在SQL Server中,我創建了一個包含兩列的視圖。一個正常的列和一個計算的哈希列。我需要在這兩列上創建一個唯一的約束。嘗試添加約束或索引會導致由於GetHash UDF導致的錯誤。 CREATE VIEW HashView
WITH SCHEMABINDING
AS
SELECT p.ItemId, [dbo].[GetHash](p.Id) as PriceHash from dbo
我注意到,如果引用的密鑰不是唯一的,則不能創建外鍵,但如果我有記錄(x, y, z),其中x是唯一的,則假設每個記錄總是唯一的,這是「直觀的」。 那麼,是不是還有我還沒有考慮過爲什麼我不能做這樣的事情 create table x(
id int primary key,
something int not null
);
create table y(
id ser
如何指定不同組合的的唯一約束?例如。 id | Fld1 | Fld2 | Fld3
-------------------------
1 | A | B | C
-------------------------
2 | A | C | D
我想使第1行(FLD1,Fld3)以上非法的,因爲組合的例子在第2行 相同的值組合(FLD1,FLD2)有什麼辦法做這個?