Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.07.31;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.007 c
1-100757
Keith Flint
2003-07-16 16:10
2003.07.31
Ошибка при проверке сосотояния чекбокса в побочной форме


11-100659
romychk
2002-11-28 13:02
2003.07.31
Размер программы


14-100940
Dmitriy O.
2003-07-15 11:49
2003.07.31
Как закрыть базы данных


14-100970
Lexer
2003-07-15 20:11
2003.07.31
Нужна подписка на вопрос в форуме.


3-100548
BAYES
2003-07-11 12:05
2003.07.31
Расширенный поиск по базе





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский