Восстановить транзакцию на уровне базы данных в SQL Server
Я создаю пакет служб SSIS, который включает извлечение данных из различных ресурсов и вставку в несколько таблиц в MS SQL Server. Каждый раз, когда запускается этот пакет, старые данные усекаются из всех таблиц при запуске пакета, и новые значения вставляются. Проблема здесь в том, что когда сервер не работает (откуда данные должны быть извлечены) или если какая-либо ошибка происходит в пакете, таблицы пусты, так как все значения усекаются.
Я хочу создать точку транзакции / точку отката в SQL до начала усечения, чтобы при возникновении ошибки или когда сервер не работал, я мог выполнить откат до начальной точки. Есть идеи, как это сделать?
1 ответ
Я получил это решено путем создания снимка базы данных перед усечением значений из таблицы и восстановлением из снимка в случае возникновения ошибки.