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

Откуда:
Сообщений: 109
линкуемся к SSAS
EXEC sp_addlinkedserver
@server='SEATTLESales1', -- THat is name that you will call this new server
@srvproduct='',
@provider='MSOLAP', ...


Сформировали символьную переменную, содержащую команду создания модели
mString = 'alter mining structure Test add mining model TestModel ([Field Key], P predict, T predict)
using Microsoft_Clustering (Cluster_Count = 4, Modelling_Cardinality = 50, Stopping_Tolerance = 1, Clustering_Method = 3) with drillthrough;'


Как передать эту команду на выполнение залинкованному серверу?

м.б. есть другой способ, но к сожалению в SSIS не нашел элемент управления позволяющий создавать модели или копировать их из ранее созданной.

Спасибо за идеи
28 май 09, 09:20    [7237755]     Ответить | Цитировать Сообщить модератору
 Re: EXEC на залинкованном сервере  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
Попробуйте

EXECUTE @string_variable AT linked_server_name
28 май 09, 09:26    [7237771]     Ответить | Цитировать Сообщить модератору
 Re: EXEC на залинкованном сервере  [new]
namenike
Member

Откуда:
Сообщений: 109
Declare @mS varchar
Set @mS = 'alter mining structure Test add mining model TestModel ([Field Key], P predict, T predict)
using Microsoft_Clustering (Cluster_Count = 4, Modelling_Cardinality = 50, Stopping_Tolerance = 1, Clustering_Method = 3) with drillthrough;'

Execute (@mS) AT SEATTLESales1

Выдает ошибку

Сервер "SEATTLESales1" не настроен для RPC.
28 май 09, 09:35    [7237788]     Ответить | Цитировать Сообщить модератору
 Re: EXEC на залинкованном сервере  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
автор
Сервер "SEATTLESales1" не настроен для RPC.


Если таки попробовать настроить?
28 май 09, 09:51    [7237817]     Ответить | Цитировать Сообщить модератору
 Re: EXEC на залинкованном сервере  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
BOL->sp_serveroption
28 май 09, 09:57    [7237839]     Ответить | Цитировать Сообщить модератору
 Re: EXEC на залинкованном сервере  [new]
namenike
Member

Откуда:
Сообщений: 109
добавил
EXEC sp_serveroption 'SEATTLESales1', 'rpc out', true
GO
Declare @mS varchar
Set @mS = 'alter mining structure Test add mining model TestMode222 ([Field Key], P predict, T predict)
using Microsoft_Clustering (Cluster_Count = 4, Modelling_Cardinality = 50, Stopping_Tolerance = 1, Clustering_Method = 3) with drillthrough;'

Execute (@mS) AT SEATTLESales1


Заработало, спс, но
Вернул ошибку:
Поставщик OLE DB "MSOLAP" для связанного сервера "SEATTLESales1" вернул сообщение "Ожидалась инструкция многомерных выражений. Задано многомерное выражение.".
Не удалось выполнить инструкцию на удаленном сервере "SEATTLESales1".


Это как понимать? Ожидалось то, что было задано, но не выполнилось?
в построителе запросов эта команда выполняется успешно
28 май 09, 10:14    [7237885]     Ответить | Цитировать Сообщить модератору
 Re: EXEC на залинкованном сервере  [new]
somebody
Member

Откуда: Москва
Сообщений: 708
А не DDL-операторы идут через тот же связ. сервер, или вообще ничего не работает?

P. S. И почему провайдер MSOLAP, а не MSOLAP.3, у Вас OLAP2000, что ли?
28 май 09, 17:27    [7241199]     Ответить | Цитировать Сообщить модератору
 Re: EXEC на залинкованном сервере  [new]
namenike
Member

Откуда:
Сообщений: 109
somebody,
SQL 2008
@provider='MSOLAP.3' - можно и так - эффект одинаковый

идут отлично:
вызов функций сборок
Execute  ('CALL DMXtract.CreateMiningStructureStatements("Test")') AT SEATTLESales1
SELECT * From OPENQUERY( SEATTLESales1, 'SELECT DMXtract.CreateMiningModelStatement() FROM [im_AssSeq]')
и
SELECT * From OPENQUERY( SEATTLESales1, ' Select ...')

затык именно с исполнением команд
Set @mS = 'alter mining structure Test add mining model TestMode2224 ([Field Key], P predict, T predict) 
 using Microsoft_Clustering (Cluster_Count = 4, Modelling_Cardinality = 50, Stopping_Tolerance = 1, Clustering_Method = 3) with drillthrough;'

Execute  (@mS) AT SEATTLESales1
с выдачей ошибки
Поставщик OLE DB "MSOLAP.3" для связанного сервера "SEATTLESales1" вернул сообщение
"Ожидалась инструкция многомерных выражений. Задано многомерное выражение.".
Сообщение 7215, уровень 17, состояние 1, строка 6
Не удалось выполнить инструкцию на удаленном сервере "SEATTLESales1".

Как решить этот затык?
28 май 09, 18:26    [7241509]     Ответить | Цитировать Сообщить модератору
 Re: EXEC на залинкованном сервере  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
Вот тут рекомендуют смотреть в сторону CLR: http://www.ureader.com/msg/1144861.aspx

А зачем такое впринципе понадобилось, менять хранилиши из транзакта?!
28 май 09, 20:06    [7241779]     Ответить | Цитировать Сообщить модератору
 Re: EXEC на залинкованном сервере  [new]
namenike
Member

Откуда:
Сообщений: 109
pkarklin

А зачем такое впринципе понадобилось, менять хранилиши из транзакта?!


По хорошему, нужен элемент управления в SSIS, который создает новую модель или копирует ее из существующей с др. именем.
Но ее НЕТ или я ее НЕ ВИЖУ

Есть выход написать сборку с функцией копирования модели.

Буду признателен за идеи.
28 май 09, 23:49    [7242182]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить