Я могу полностью понять, почему компания хотела бы сделать это, особенно если они предлагают размещенное решение и совместно используют одну базу данных между несколькими клиентами, или что-то подобное. Кажется, что фильтрация записей по полю customerId и удаление их в файл просто сработает, и на этом все кончено ... однако на этом они запутались.
Без рассмотрения рассматриваемой базы данных трудно дать указания, почему это плохая идея. Но некоторые сразу приходят на ум:
Потеря резервной копии журнала транзакций.
Автоинкрементные идентификаторы не любят вставлять «пропущенные» записи вручную, а отключение функции IDENT и / или ограничений во время вставки просто вызывает проблемы ссылочной целостности.
А как насчет общих данных? Существуют ли какие-либо таблицы для нескольких клиентов? Что происходит, когда эти данные изменяются со временем ... где вы будете получать последнюю резервную копию только для этих данных? И как это повлияет на других клиентов, живущих в той же базе данных?
Внешние ключи ... вам придется проанализировать все таблицы и убедиться, что таблицы без внешних ключей вставляются первыми. Это не невозможно, но есть место для ошибки.
Что происходит при изменении схемы? Если вы выполняете резервное копирование всех этих данных в виде отдельных вставок, они больше не будут работать как есть, без сопоставления резервных копий схем.
Есть множество вещей, которые нужно учитывать. Лично, если бы я был ими, я бы начал с одной резервной копии всей базы данных SQL Server (еще лучше, разделив их клиентов на разные базы данных вместо того, чтобы все они разделяли одну большую базу данных), ежедневно создавая различия (или любой график, который лучше соответствует их потребностям). Затем, в качестве дополнительной услуги, они могли бы предложить какой-то метод экспорта и импорта данных, будь то через XML, CSV, что угодно. Разрешить клиентам выполнять резервное копирование своих данных с помощью экспорта, и при необходимости они могут в любое время повторно импортировать его, что позволяет проводить повторную проверку и т. Д.
При таком подходе вы всегда можете гарантировать, что у вас есть метод восстановления резервной копии, соответствующий стандартам Microsoft. Данные не игрушка, и SQL Server не зверь на пустом месте ... это гораздо больше, чем просто извлечение данных из базы данных и их выбрасывание куда-то, когда дело доходит до процесса резервного копирования SQL Server. Целую компанию можно поставить на колени, просто не сумев должным образом защитить свои данные, и хуже всего то, что большинство из них до последней минуты не осознают, что их пользовательский процесс резервного копирования не работает во время восстановления ... уч
Наконец, что не менее важно, могут быть инструменты, которые подойдут для работы. Red Gate предлагает множество отличных инструментов SQL Server, таких как SQL Server Compare, Data Compare и их собственные приложения резервного копирования. Несмотря на это, я бы использовал их в качестве крайней меры ...
http://www.red -gate.com /