Если вы хотите, чтобы это происходило OnDelete, я сначала подумал, что вам нужно использовать триггеры, и вам нужно либо поместить триггер на каждую таблицу, которая является Parent в цепочке отношений, либо один триггер на «Table1». "нужно будет вызвать процедуру, которая идет по всей цепочке.
Поскольку вы сначала хотите записать удаленные данные в файл, я предполагаю, что вторая база данных, которую вы хотите заполнить, не находится в той же сети, что и первая.
Итак, что вы можете сделать, используя метод одиночного триггера, это запустить триггер для заполнения таблицы, в которой просто есть PK строки, удаляемой из «Table1». Затем запустите задание, которое вызывает пакет служб SSIS. Пакет читает таблицу, чтобы выяснить, какая строка была удалена, а затем начинает серию потоков данных для создания ваших файлов.
Наконец, другие потоки данных будут загружать файл (ы) во вторую базу данных. Эти потоки данных могут находиться в одном пакете, другом пакете, одном и том же задании агента, другом задании агента, в зависимости от того, что лучше всего работает в деталях.
В качестве альтернативы, если вы установите триггер для каждой родительской таблицы, вы можете сделать так, чтобы этот триггер выполнял массовый экспорт связанных строк в дочерней таблице. Затем запланированное задание может время от времени выполняться и импортировать любые найденные файлы во вторую базу данных.