Эта ошибка может указывать на проблему с вашей строкой подключения и соответствует ли ваше имя строки соединения декларации контекста базы данных.
У меня была эта ошибка, потому что я неправильно назвал локальную базу (глупая ошибка) и имя строки подключения в файле web.config «DefaultConnection» не соответствует MyDbContext, то есть
public MyDbContext(): base("DefaultConnection")
{}
<connectionStrings>
<add name="DefaultConnection" ...
</connectionStrings>
Вы установили DelayValidation на Ложь на свойствах Data Source Destination? В противном случае попробуйте это.
Править: Конечно, это должно быть DelayValidation к Правда, таким образом, он просто идет вперед и попытки вместо проверки. Кроме того, вместо того, чтобы изменить Ваш пакет в Блокноте, почему бы не поместить имя таблицы в переменную, помещает переменную в Выражение на месте назначения, затем выставляют переменную в.DtsConfig конфигурационном файле? Затем можно изменить это без опасности.
Проверьте, имеет ли новая конечная таблица те же столбцы как старый.
Я полагаю, что ошибка происходит, если столбцы отличаются, и место назначения больше не может отображать ее входные столбцы на столбцы таблицы. Если две таблицы имеют ту же схему, эта ошибка не должна происходить.
Если бы все, что Вы делаете, копирует данные от одного сервера SQL2005 до другого, я просто создал бы Связанный сервер и использовал бы сохраненный proc для копирования данных. Пакет SSIS является излишеством.
После того как связанный сервер создается, Вы просто программировали бы что-то как...
INSERT INTO server1.dbo.database1.table1(id,name)
SELECT id, name FROM server2.dbo.database1.table1
Как далеко пакет SSIS я должен был всегда вновь открыть и восстанавливать пакет так, чтобы метаданные были обновлены при изменении свойств столбца таблиц.