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

Откуда:
Сообщений: 9
Добрый день.

Есть сервер SQL_1 ( с базой БД_1 и таблицей Т_1) и сервер SQL_2 c базой БД_2.

На таблице Т_1 построил полнотекстовый индекс.
Сервер SQL_1 прилинковал к серверу SQL_2.

Пишу

USE [БД_2]
GO
SELECT ID
FROM [SQL_1 ].[БД_1 ].[dbo].[Т_1]
WHERE CONTAINS(*, '"Чин Дэ"')

Все работает


Создаю синоним на таблицу Т_1

USE [ONLINE]
GO
CREATE SYNONYM [dbo].[SYN] FOR [SQL_1 ].[БД_1 ].[dbo].[Т_1]
GO

Проверяю select * from [dbo].[SYN] - данные выбираются

Пробую построить поиск по синониму
USE [БД_2]
GO
SELECT ID
FROM [dbo].[SYN]
WHERE CONTAINS(*, '"Чин Дэ"') - выдает ошибку

Сообщение 0, уровень 11, состояние 0, строка 0
При выполнении текущей команды возникла серьезная ошибка.. При наличии результатов они должны быть аннулированы.
Сообщение 0, уровень 20, состояние 0, строка 0
При выполнении текущей команды возникла серьезная ошибка.. При наличии результатов они должны быть аннулированы.

В чем может быть моя ошибка и как избежать ее?
29 янв 13, 09:49    [13842716]     Ответить | Цитировать Сообщить модератору
 Re: Full-text search по синониму на таблицу прилинкованного сервера  [new]
prog_new
Member

Откуда:
Сообщений: 9
неужели никто не сталкивался в такой проблемой?
Подскажите хоть где копать, в каком направлении?
11 фев 13, 12:06    [13907620]     Ответить | Цитировать Сообщить модератору
 Re: Full-text search по синониму на таблицу прилинкованного сервера  [new]
Glory
Member

Откуда:
Сообщений: 104760
prog_new
Подскажите хоть где копать, в каком направлении?

В направлении опубликования версий серверов
11 фев 13, 12:11    [13907650]     Ответить | Цитировать Сообщить модератору
 Re: Full-text search по синониму на таблицу прилинкованного сервера  [new]
prog_new
Member

Откуда:
Сообщений: 9
prog_new
Добрый день.

Есть сервер SQL_1 ( с базой БД_1 и таблицей Т_1) и сервер SQL_2 c базой БД_2.

На таблице Т_1 построил полнотекстовый индекс.
Сервер SQL_1 прилинковал к серверу SQL_2.

Пишу

USE [БД_2]
GO
SELECT ID
FROM [SQL_1 ].[БД_1 ].[dbo].[Т_1]
WHERE CONTAINS(*, '"Чин Дэ"')

Все работает


Создаю синоним на таблицу Т_1

USE [ONLINE]
GO
CREATE SYNONYM [dbo].[SYN] FOR [SQL_1 ].[БД_1 ].[dbo].[Т_1]
GO

Проверяю select * from [dbo].[SYN] - данные выбираются

Пробую построить поиск по синониму
USE [БД_2]
GO
SELECT ID
FROM [dbo].[SYN]
WHERE CONTAINS(*, '"Чин Дэ"') - выдает ошибку

Сообщение 0, уровень 11, состояние 0, строка 0
При выполнении текущей команды возникла серьезная ошибка.. При наличии результатов они должны быть аннулированы.
Сообщение 0, уровень 20, состояние 0, строка 0
При выполнении текущей команды возникла серьезная ошибка.. При наличии результатов они должны быть аннулированы.

В чем может быть моя ошибка и как избежать ее?



Дополнение:
Если я укажу полный путь
USE [БД_2]
GO
SELECT ID
FROM [SQL_1].[БД_1].[dbo].[Т_1]
WHERE CONTAINS(*, '"Чин Дэ"')

то все работает!

Как тогда можно правильно настроить алиас?
11 фев 13, 12:33    [13907796]     Ответить | Цитировать Сообщить модератору
 Re: Full-text search по синониму на таблицу прилинкованного сервера  [new]
prog_new
Member

Откуда:
Сообщений: 9
SQL 2005
11 фев 13, 16:27    [13909777]     Ответить | Цитировать Сообщить модератору
 Re: Full-text search по синониму на таблицу прилинкованного сервера  [new]
alexey kirilenko
Member

Откуда: Saint Petesburg
Сообщений: 31
прилинковав сервер, неважно с оригинальным именем, или по alias
в запросе указывается полное название:
[server].[database].[scheme].[table]

что в логах какая именно ошибка?
12 фев 13, 12:32    [13913168]     Ответить | Цитировать Сообщить модератору
 Re: Full-text search по синониму на таблицу прилинкованного сервера  [new]
prog_new
Member

Откуда:
Сообщений: 9
alexey kirilenko,

в том то и дело, что ошибок в логах не нашел ...
Или может не там искал? Где смотреть?

если нужно полностью указывать путь к таблице прилинкованного сервера, то какой смысл создавать синоним?
Я предполагал, что создав синоним, я смогу впоследствии, при изменении пути к таблице удаленного сервера, только менять синоним (не трогая вьюхи, хранимки и функции) сохранив при этом работоспособность ПО
15 фев 13, 08:31    [13929853]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить