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

Откуда:
Сообщений: 129
Без openquery...
10 ноя 11, 16:26    [11576450]     Ответить | Цитировать Сообщить модератору
 Re: Как вызвать функцию из линкед сервера?  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
А вы как пробовали? (что, кстати, за функция?)
10 ноя 11, 16:27    [11576467]     Ответить | Цитировать Сообщить модератору
 Re: Как вызвать функцию из линкед сервера?  [new]
MaxFoxxy
Member

Откуда:
Сообщений: 129
MaxFoxxy
Без openquery...

При обычном вызове получаю

Remote function reference 'ЛинкедСервер.База.dbo.функия' is not allowed, and the column name 'ЛинкедСервер' could not be found or is ambiguous.
10 ноя 11, 16:28    [11576472]     Ответить | Цитировать Сообщить модератору
 Re: Как вызвать функцию из линкед сервера?  [new]
MaxFoxxy
Member

Откуда:
Сообщений: 129
tpg
А вы как пробовали? (что, кстати, за функция?)


SELECT ЛинкедСервер.База.[dbo].функция (параметр)
10 ноя 11, 16:29    [11576493]     Ответить | Цитировать Сообщить модератору
 Re: Как вызвать функцию из линкед сервера?  [new]
Alexandr Kr.
Member

Откуда: Украина, Харьков
Сообщений: 165
MaxFoxxy,

exec ('select DBName.Schema.FunctionName(Param1...)') at LinkedServer
10 ноя 11, 16:55    [11576772]     Ответить | Цитировать Сообщить модератору
 Re: Как вызвать функцию из линкед сервера?  [new]
MaxFoxxy
Member

Откуда:
Сообщений: 129
Alexandr Kr.
MaxFoxxy,

exec ('select DBName.Schema.FunctionName(Param1...)') at LinkedServer



Спасибо, это на манер openquery
Возможно ли при конфигурировании сервера указать что типа возможности прямого доступа к функциям?
10 ноя 11, 17:21    [11577054]     Ответить | Цитировать Сообщить модератору
 Re: Как вызвать функцию из линкед сервера?  [new]
MaxFoxxy
Member

Откуда:
Сообщений: 129
up
10 ноя 11, 17:47    [11577329]     Ответить | Цитировать Сообщить модератору
 Re: Как вызвать функцию из линкед сервера?  [new]
MaxFoxxy
Member

Откуда:
Сообщений: 129
не ужели я первый с этим столкнулся?
Произошел переезд на новый сервер, но необходимо собирать инфу и со старого.
Используется уйма функций из баз старого сервера.
Переписывать все запросы к функциям под openquery (exec() at ) - единственный выход?
10 ноя 11, 18:47    [11577804]     Ответить | Цитировать Сообщить модератору
 Re: Как вызвать функцию из линкед сервера?  [new]
linked server
Guest
MaxFoxxy
не ужели я первый с этим столкнулся?
Произошел переезд на новый сервер, но необходимо собирать инфу и со старого.
Используется уйма функций из баз старого сервера.
Переписывать все запросы к функциям под openquery (exec() at ) - единственный выход?

Вам запросы и так переписывать с локальных функций на функции linkedservera.
От сюда вывод - сделайте на каждую функцию удаленного сервера аналог функции на новом, которая уже ч/з openquery будет обращаться на удаленный, тогда даже код, где они вызываются, переписывать не надо будет.
10 ноя 11, 19:06    [11577882]     Ответить | Цитировать Сообщить модератору
 Re: Как вызвать функцию из линкед сервера?  [new]
MaxFoxxy
Member

Откуда:
Сообщений: 129
linked server,
Это мысль тоже возникала, но функций не одна и не две к сожалению...
Настроек у сервера нет ли каких либо на эту тему?
10 ноя 11, 19:31    [11577959]     Ответить | Цитировать Сообщить модератору
 Re: Как вызвать функцию из линкед сервера?  [new]
linkedserver
Guest
MaxFoxxy
linked server,
Это мысль тоже возникала, но функций не одна и не две к сожалению...
Настроек у сервера нет ли каких либо на эту тему?

если нужных функций ни одна и не две, то видимо и вызовов их не меньше, и все эти вызовы нужно переписывать с db.schema.func() на linkedserver.db.schema.func(). Может проще функции перенести?
10 ноя 11, 19:39    [11577977]     Ответить | Цитировать Сообщить модератору
 Re: Как вызвать функцию из линкед сервера?  [new]
synonym'ы linked-sever'ы
Guest
MaxFoxxy,

synonym'ы linked-sever'ы не поддерживают?
11 ноя 11, 09:20    [11579270]     Ответить | Цитировать Сообщить модератору
 Re: Как вызвать функцию из линкед сервера?  [new]
Начинающий SQL 2008
Member

Откуда:
Сообщений: 438
MaxFoxxy,

https://www.sql.ru/forum/actualthread.aspx?bid=1&tid=804165
11 ноя 11, 09:56    [11579456]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить