このスキーマでテーブルを定義しました:
CREATE TABLE [dbo].[Codings]
(
[Id] [int] IDENTITY(1,1) NOT NULL,
[ParentId] [int] NULL,
[CodeId] [int] NOT NULL,
[Title] [nvarchar](50) COLLATE Arabic_CI_AI NOT NULL,
CONSTRAINT [PK_Codings]
PRIMARY KEY CLUSTERED ([Id] ASC) WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
そして、次のようなデータを入力してください:
Id ParentId CodeId Title
----------- ----------- ----------- ----------
1 NULL 0 Gender
2 1 1 Male
3 1 2 Female
4 NULL 0 Educational Level
5 4 1 BS
6 4 2 MS
7 4 3 PHD
親であるレコード (Id = 1 または 4 など) を削除すると、すべての子が自動的に削除されます (ParentId = 1 または 4 を持つすべてのレコード)。
Id と Parent Id の関係 (および削除ルールのカスケードを設定) でできると思っていましたが、MMS でそれを行うと、[プロパティ] の [削除ルール] または [更新ルール] が無効になります。
私の質問は、これを達成するために何ができるでしょうか?
ありがとうございました
編集:
私が書いたとき (Id = 1 または 4 のように)、子ではなく親であるレコードを意味し、Id = 1 または 4 のようなクエリを意味するものではありません
一部の友人は、削除トリガーを介して実行できるとほのめかしましたが、リレーションを介して実行できると思いました