| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Базы данных и репортинг > Копирование таблицы из одной БД в другую |
| Автор: RST8 20.5.2007, 16:00 |
| Как наиболее эффективно скопировать данные из БД Access в SQL Server 2000? Имеются две примерно идентичные таблицы, поля немного по разному называются и в источнике полей больше, лишние поля не копируются. Пользуюсь ADO. |
| Автор: Sansa 21.5.2007, 07:42 |
| Проще наверное скриптом (а не delphi) через выгрузку таблицы в файл и последующим импортом. Настроить поля и отобрать записи лучше всего в источнике так, чтобы как можно ближе подходили к назначению. Плюс, быстрее, так как в большинстве баз данных средства отвечающие за экспорт и импорт оптимизированы по скорости (batch import) |
| Автор: Rodman 21.5.2007, 08:34 |
| RST8, что уже есть??? Connectionы настроил??? |
| Автор: RST8 23.5.2007, 18:34 | ||
Да все настроено, конекты, таблицы ну или запросы. Пока копирую простым перебором строк, что как я понимаю для клиент серверной БД не очень хорошо. |
| Автор: kobra 24.5.2007, 08:38 |
| INSERT INTO DestinationTable (...Fields...) OPENROWSET (ну и все что нужно для конекта + SELECT (...Fields...) FROM SourceTable) |
| Автор: Marduk 8.6.2007, 08:56 |
| Юзай DTS на сервере, - пакеты трансформации данных. В Enterprise Manager выбираешь Data Transformation Services и при помощи мастера создаешь скрипт, потом его можно сохранить и запускать из под делфи через ShellExecute или просто командой dtsrun из системы, главное - что все делается быстро и корректно, полностью сохраняется структура в результирующей таблице и данные, плюс, можно из SQL Server в любой формат сохранить и наоборот. |