Каков наилучший способ переноса данных из таблицы продаж в таблицу истории продаж в sql server 2005. Таблица истории продаж будет использоваться для отчетности.





Массовое копирование выполняется быстро и не использует журнал транзакций. Одна партия запускается в конце дня.
Удаление скопированных записей с вашего производственного сервера - это другая ситуация, которую необходимо запланировать в подходе / планах обслуживания этого сервера. Решение вашего сервера отчетов не должно мешать работе рабочего сервера или влиять на него.
Имейте в виду, что ваш сервер отчетов не предназначен для резервного копирования данных, а скорее является копией, созданной исключительно для целей отчетности.
Также убедитесь, что в настройках вашего сервера отчетов установлен Простая модель восстановления.
Для большинства решений потребуется 2 шага; -копировать записи из источника в цель -удаление записей из источника. Очень важно, чтобы исходная таблица имела первичный ключ.
«Лучший» метод зависит от многих вещей. Сколько записей? Это производственная среда? Какие инструменты у вас есть?
Если вы не перемещаете большой объем данных, простая хранимая процедура подойдет. задание сервера sql может управлять временем вызова процедуры.
Взгляните на SSAS. OLAP создан для отчетов, и его легко запрашивать с помощью таких инструментов, как сводные таблицы Excel.
если вы просто хотите переместить данные в другую таблицу, используйте BulkCopy / BulkInsert. если вы хотите построить отчеты, я бы предложил решение бизнес-аналитики, такое как MS Analysis Service (OLAP).
Сложно и, на мой взгляд, некрасиво поддерживать две или более таблицы истории / архива в одной базе данных. Для решения по отчетности вы в любом случае рассмотрите все таблицы для этой части информации. Таблицы истории / архива следует использовать только в том случае, если вы собираетесь убрать данные и не трогать их в течение длительного периода времени, т.е. заархивируйте его вне операционной БД.
Резервная копия не должна использоваться для отчетов (или чего-либо еще), но ее следует хранить в надежном месте. Я предлагаю заменить это слово на «Копировать».