Първо, като еднократно упражнение за почистване на данни, изтрийте осиротелите редове, напр.
DELETE
FROM ReferencingTable
WHERE NOT EXISTS (
SELECT *
FROM MainTable AS T1
WHERE T1.pk_col_1 = ReferencingTable.pk_col_1
);
Второ, като еднократно упражнение за промяна на схема, добавете ON DELETE CASCADE
референтно действие към външния ключ на референтната таблица, напр.
ALTER TABLE ReferencingTable DROP
CONSTRAINT fk__ReferencingTable__MainTable;
ALTER TABLE ReferencingTable ADD
CONSTRAINT fk__ReferencingTable__MainTable
FOREIGN KEY (pk_col_1)
REFERENCES MainTable (pk_col_1)
ON DELETE CASCADE;
След това, завинаги, редовете в препращащите таблици автоматично ще бъдат изтрити, когато техният препратен ред бъде изтрит.