ОК, это вопрос передового опыта.
У меня есть две таблицы: заголовки и строки. Мне нужно синхронизировать их обе с другой базой данных.
Обе таблицы перемещаются с небольшой частотой синхронизации (заголовки заполняются первыми, а строки заполняются следующими, поэтому нет никакой гарантии целостности между ними ).
Я видел два метода для реализации этого, первый из них заключался в том, чтобы привести их оба во временные таблицы, проверить целостность между двумя таблицами, а затем удалить все, что не было синхронизировано.
Я переписал это, чтобы просто выполнить внутреннее соединение с временной таблицей, затем сделать выборку, отличную от временной таблицы, чтобы заполнить заголовки, и прямой выбор, чтобы заполнить строки.
Мой метод более эффективен Без вопросов, но я не люблю использовать Select DISTINCT, он пахнет. Я также немного осторожен с тем, что ВНУТРЕННЕЕ СОЕДИНЕНИЕ скрывает некоторые проблемы, которые я никогда не увижу.
Итак, есть ли шаблон проектирования для решения этого сценария (он должен быть довольно распространенным), предпочтительно в SSIS. Возможно, я упускаю очевидное, но это чертовски трудная вещь для Google, поэтому любые идеи приветствуются.