Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Работа с linked сервером  [new]
MaxFoxxy
Member

Откуда:
Сообщений: 129
подскажите в каких случаях целесообразно использовать openquery а в каких простое обращение через link?
К примеру
delete from OPENQUERY (DOLPHIN, 'select period_id from BIZ_DW.dbo.mrk_fact_sale where period_id between 2130 and 2144 ') - работает 7 минут

delete from DOLPHIN.BIZ_DW.dbo.mrk_fact_sale where period_id between 2130 and 2144 - секунду

Хотя казалось бы что OPENQUERY отрабатывает на прилинкованом сервере и должен быть быстрее

Ситуация с инсертом координально противополжная... Где же истина?
16 ноя 11, 12:27    [11604716]     Ответить | Цитировать Сообщить модератору
 Re: Работа с linked сервером  [new]
MaxFoxxy
Member

Откуда:
Сообщений: 129
MaxFoxxy
подскажите в каких случаях целесообразно использовать openquery а в каких простое обращение через link?
К примеру
delete from OPENQUERY (DOLPHIN, 'select period_id from BIZ_DW.dbo.mrk_fact_sale where period_id between 2130 and 2144 ') - работает 7 минут

delete from DOLPHIN.BIZ_DW.dbo.mrk_fact_sale where period_id between 2130 and 2144 - секунду

Хотя казалось бы что OPENQUERY отрабатывает на прилинкованом сервере и должен быть быстрее

Ситуация с инсертом координально противополжная... Где же истина?


удаление порядка 100 000 записей
16 ноя 11, 12:36    [11604804]     Ответить | Цитировать Сообщить модератору
 Re: Работа с linked сервером  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
автор
Хотя казалось бы что OPENQUERY отрабатывает на прилинкованом сервере и должен быть быстрее


На прилинкованном сервере сработает то, что "внутри" OPENQUERY.

автор
Где же истина?


EXEC ('DELETE BIZ_DW.dbo.mrk_fact_sale where period_id between 2130 and 2144') AT DOLPHIN 
16 ноя 11, 12:39    [11604828]     Ответить | Цитировать Сообщить модератору
 Re: Работа с linked сервером  [new]
MaxFoxxy
Member

Откуда:
Сообщений: 129
pkarklin
автор
Хотя казалось бы что OPENQUERY отрабатывает на прилинкованом сервере и должен быть быстрее


На прилинкованном сервере сработает то, что "внутри" OPENQUERY.

автор
Где же истина?


EXEC ('DELETE BIZ_DW.dbo.mrk_fact_sale where period_id between 2130 and 2144') AT DOLPHIN 


Спасибо, с делитом прошло!
как с инсертом быть?
16 ноя 11, 12:51    [11604974]     Ответить | Цитировать Сообщить модератору
 Re: Работа с linked сервером  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
MaxFoxxy
как с инсертом быть?


Так же, если нужны параметры, то

EXEC DOLPHIN.BIZ_DW.dbo.sp_executesql N'INSERT ...', ...
16 ноя 11, 13:30    [11605475]     Ответить | Цитировать Сообщить модератору
 Re: Работа с linked сервером  [new]
HandKot
Member

Откуда: Sergiev Posad
Сообщений: 3058
можно и просто
exec ('тута запрос параметрами', param1, param2...) at DOLPHIN
16 ноя 11, 14:07    [11605933]     Ответить | Цитировать Сообщить модератору
 Re: Работа с linked сервером  [new]
MaxFoxxy
Member

Откуда:
Сообщений: 129
спасибо за советы
16 ноя 11, 15:28    [11606878]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить