次のようなビューがあります。
CREATE view reference.Test WITH SCHEMABINDING as
SELECT reference.HighlevelTestId as TestId, Name, IsActive,
cast(1 as bit) as IsHighLevelTest
FROM reference.HighlevelTest
UNION ALL
SELECT LowLevelTestId as TestId, Name, IsActive,
cast(0 as bit) as IsHighLevelTest
FROM reference.LowLevelTest
GO
注: HighLevelTestId と LowLevelTestId は、決して同じ値を持たない (競合しない) ことが保証されています。
次のような別のテーブルがあります。
CREATE TABLE [Reference].[TestAddition](
[TestId] [BigInt] NOT NULL,
[OtherStuff] [bit] NOT NULL,
....
)
TestAddition
TestId 列のビューにテーブルを FK したいと本当に思っていTest
ます (参照整合性と OData の使いやすさのため)。
それを行う方法はありますか?