Dovrai implementarlo come un trigger di eliminazione INVECE di informazioni dettagliate, per farlo funzionare. Qualcosa come:
create trigger T_Insights_D
on Insights
instead of delete
as
set nocount on
delete from broader_insights_insights
where insight_id in (select ID from deleted) or
broader_insight_id in (select ID from deleted)
delete from Insights where ID in (select ID from deleted)
Spesso con le eliminazioni a cascata e molte chiavi esterne, è necessario dedicare del tempo a elaborare un ordine "a cascata" in modo che l'eliminazione che si verifica nella parte superiore di un "albero" venga trasferita correttamente alle tabelle di riferimento. Ma in questo caso non è possibile.