Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.31;
Скачать: CL | DM;

Вниз

Как программно осуществить транспортировку данных?   Найти похожие ветки 

 
DBDev   (2003-07-10 10:14) [0]

Имеем 2 MSSQL сервера:

Необходимо по кнопке из программы осуществлять однонаправленное обновление данных с полным затиранием всех старых значений для 5 связанных таблиц.

Хотелось бы услышать возможные пути оптимального с Вашей точки зрения решения, кроме вручную удалить все записи и в цикле копировать.


 
DenK_vrtz ©   (2003-07-10 10:21) [1]

сделать view и написать триггер


 
DBDev   (2003-07-10 11:03) [2]

2 DenK_vrtz: А нельзя ли поподробнее?


 
DenK_vrtz ©   (2003-07-10 11:32) [3]

А поподробнее постоновку задачи можно?


 
clickmaker ©   (2003-07-10 11:52) [4]

написать хранимую процедуру или просто скриптик + запуск по расписанию или принудительно


 
Fiend ©   (2003-07-10 11:55) [5]

Создаём на одном из серверов Linked Server на второй сервер.
затем пользуемся openquery и ни надо никаких циклов. сервера сами всё сделают. надо скрипт грамотно написать. т.е. удалить в нужной последовательности и залить тоже в нужной.

Второй вариант сделать DTS пакет. а из программы просто выполнить скрипт, который выполнит пакет. Это немного лучше вариант. т.к. в этом случае будет выполняться Bulk Copy, если вы конечно правильно построите пакет ДТС.
Это всё совсем не сложно, надо только открыть БОЛ и почитать про это.


 
LordOfSilence ©   (2003-07-10 12:00) [6]

Для этого существует Data Transformation Services.
Довольно мощная и удобная штука. Настрой один раз
и гоняй хоть по расписанию.


 
LordOfSilence ©   (2003-07-10 12:02) [7]

Писал, не видев Fiend © (10.07.03 11:55)
В общем, вариаций много :-)


 
DBDev   (2003-07-10 17:02) [8]

2 Fiend:
"Второй вариант сделать DTS пакет. а из программы просто выполнить скрипт, который выполнит пакет. Это немного лучше вариант. т.к. в этом случае будет выполняться Bulk Copy, если вы конечно правильно построите пакет ДТС."

А как из программы выполнить скрипт, выполняющий DTS пакет?


 
Fiend ©   (2003-07-10 17:45) [9]

xp_cmdshell - расш.хранимая процедура, которая может выполнять команды shell
например exec xp_cmdshell "dir c:" покажет все файлы на диске с:

далее, есть тул dtsrun, который может выполнять пакеты. Параметры передаются с командной строки. Путь к нему объявлен в переменных среды, птому можете смело писать exec xp_cmdshell "dtsrun (параметры)"
Про параметры надо почитать в командной строке



Страницы: 1 вся ветка

Текущий архив: 2003.07.31;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.02 c
14-100958
Новак
2003-07-14 12:23
2003.07.31
Сжать базу MSAccess-97. Воспользовался рекомендацией sniknik (3


14-100872
easy
2003-07-13 01:21
2003.07.31
mirror


3-100587
skyzero
2003-07-08 17:18
2003.07.31
Mysql+Delphi?


6-100869
sergey2
2003-05-15 01:22
2003.07.31
Как сделать фильтрацию содержимого в TWebBrowser или TEmbeddedWB?


14-100932
copyr25
2003-07-11 22:01
2003.07.31
Кто, по Вашему, будет Президентом в России? В 2008-м году?