Переопределить переменную SQLCMD внутри скрипта T-SQL - PullRequest
0 голосов
/ 06 ноября 2019

Я написал этот код T-SQL, который я запускал в режиме SQLCMD в SSMS:

:setvar ENV "Table1"

DECLARE @DomainPrefix NVARCHAR(50) = N'$(ENV)';

IF(@DomainPrefix = N'Table1')
BEGIN
    SET @DomainPrefix = 'Table2';
END;

:setvar Prefix @DomainPrefix

PRINT $(Prefix)

SELECT * FROM [DATA].[mySchema].[$(Prefix)]

Ниже приведены следующие данные:

Table2 Msg 208, уровень16, состояние 1, строка 12 Неверное имя объекта 'DATA.mySchema. @ DomainPrefix'.

Я не понимаю, почему он не заменяет $ (DomainPrefix) значением 'Table2', которое ямогу печатать на предыдущей строке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...