Member 9720862 Ответов: 1

Синоним для двух баз данных


у меня есть база данных заработной платы NEW_JAMNAGARPAYROLL.
и еще две базы данных c0012016new_jamnagar и c0012017new_jamnagar.

c0012016new_jamnagar и c0012017new_jamnagar
имеет стол LedgerMaster.

у меня есть создать синоним в NEW_JAMNAGARPAYROL
для LedgerMaster использовать в NEW_JAMNAGARPAYRO.

Ниже приведено создание синтекса, который я использую..
Но этот синоним не будет работать для c0012017new_jamnaga.

потому что у меня есть использование c0012016new_jamnaga
в создании Синтекс.

Без указания имени БД синоним выдаст ошибку во время выполнения..
так как же создать синоним, чтобы он работал для обеих баз данных?

Что я уже пробовал:

USE [NEW_JAMNAGARPAYROLL]
GO
CREATE SYNONYM [dbo].[LEDGERMASTER] FOR [c0012016new_jamnagar].[DBO].[LEDGERMASTER]
GO



Эро-это :
Msg 470, Level 16, State 1, Procedure GetPayRollEmployeeByAuto, Line 18
The synonym "LedgerMaster" referenced synonym "LEDGERMASTER". Synonym chaining is not allowed.

CHill60

Я предполагаю, что ошибка заключается в следующем: "этот синоним уже существует?"

1 Ответов

Рейтинг:
2

Richard Deeming

Цитата:
Синоним " Ледгермастер "ссылается на синоним"ЛЕДГЕРМАСТЕР". Цепочка синонимов не допускается.

Основываясь на этом сообщении об ошибке, [c0012016new_jamnagar].[DBO].[LEDGERMASTER] это уже синоним.

Вы не можете создать синоним, который указывает на другой синоним.

Вам нужно будет изменить свой CREATE SYNONYM скрипт, указывающий на тот же источник, что и [c0012016new_jamnagar].[DBO].[LEDGERMASTER] синоним.