Я определил таблицу с этой схемой:
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, правило удаления или обновление правила в свойствах отключается.
Мой вопрос: что я могу сделать, чтобы достичь этого?
Спасибо
Edit:
Когда я писал (например, Id = 1 или 4), я имел в виду записи, которые являются родительскими, а не дочерними, и я не имею в виду запрос, подобный Id = 1 или 4
Какой-то друг дал понять, что я могу сделать это с помощью триггера удаления, но я предположил, что могу сделать это с помощью отношения