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

Откуда:
Сообщений: 165
1. Есть сервер доступный только на чтение.
2. Если пользуем его как линкедсервер запрос на локальном сервере вида
-- local server connection window
select * from LinkedServer.DB.dbo.RemoteTable
inner join LocalTable on 1=1
where ...
выполняется гораздо дольше чем запрос на удаленном сервере вида
-- remote server connection window
select * from RemoteTable 
inner join OPENROWSET (
'SQLOLEDB',
'LocalServer';'user';'password',
'Select * from LocalTable'
) as RS on 1=1
where ...
3. Второй вариант в принципе устраивал пока на линкед сервер на поставили файрвол не пропускающий операторы OpenRowset, Opendatasource согласно какомуто старому MS KB..., админы файрвола не могут ничем помочь :(
4. Какова альтернатива? Почему долго выпоняется первый вариант?
20 авг 04, 13:11    [897062]     Ответить | Цитировать Сообщить модератору
 Re: есть ли альтернатива openrowset|opendatasource ?  [new]
iSestrin
Member

Откуда: Новосибирск
Сообщений: 3811
>inner join LocalTable on 1=1<

ну еще бы не дольше! тут вы таблички умножаете!
20 авг 04, 13:28    [897144]     Ответить | Цитировать Сообщить модератору
 Re: есть ли альтернатива openrowset|opendatasource ?  [new]
Glory
Member

Откуда:
Сообщений: 104760
4. Какова альтернатива? Почему долго выпоняется первый вариант?
А планы выполнения сравнить не судьба ?
22 авг 04, 15:48    [899650]     Ответить | Цитировать Сообщить модератору
 Re: есть ли альтернатива openrowset|opendatasource ?  [new]
Road Runner
Member

Откуда:
Сообщений: 274
Я бы сначала затягивал таблицу с удаленного сервера в локальную (если очень не хочется "замусоривать" базу таблицами, то можно создать временную таблицу или переменную табличного типа), а потом уже делал с ней какие-то действия. Исключение может составлять случай, когда объединение сильно сокращает число возвращаемых строк (не случай кроссджоина, это точно).
Вот такие мысли. Или я не понял сути задачи.
23 авг 04, 16:18    [901809]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить