Распечатать и выполнить форматирование - PullRequest
0 голосов
/ 15 февраля 2019

picture of query and printout

Я написал скрипт, который необходимо проверить, прежде чем я смогу его запустить (@printonly = 0)

Мне нужно сначала отформатировать скрипт для удобства чтения.Я оборачиваю операторы в переменную, затем печатаю переменную.

Я хочу сохранить раздел запроса в чистоте, но также выводить раздел печати в желаемом формате.

1) (второй) ОБНОВЛЕНИЕ в области печати Я хочу пустую новую строку, затем показывая ОБНОВЛЕНИЕ.Могу ли я встроить это в запрос в верхней части?

2) (Третье) ОБНОВЛЕНИЕ в области печати отображается с вкладками из-за чистого форматирования в области запроса.Как я могу получить этот ярлык в области печати, сохраняя хорошее форматирование в области запроса?

3) То же, что номер 1), мне нужна новая пустая строка перед (четвертым) ОБНОВЛЕНИЕМ.

DECLARE @remoteinstance nvarchar(max)
DECLARE @exec nvarchar(max)
DECLARE @printonly bit
SET @printonly = 1

        --section 1
    SET @remoteinstance = '[linkedservername]'
    SET @exec = 'UPDATE r_st
                         SET.....
                         FROM.... AS st
                         INNER JOIN ' + @remoteinstance + '.. AS r_st
                         st... = r_st... AND st... <> r_st... '
    IF (@printonly = 1)  BEGIN PRINT @exec END
                    ELSE BEGIN EXEC (@exec) END

            SET @exec = 'UPDATE ' + @remoteinstance + '...
            SET xx = xy

            UPDATE ' + @remoteinstance + '....
            SET xz = xa
            WHERE ..... '

    IF (@printonly = 1)  BEGIN PRINT @exec END
                ELSE BEGIN EXEC (@exec) END

--section 2 - 
       SET @remoteinstance = '[next linkedservername]'
       SET @exec = ' {same as above}....

1 Ответ

0 голосов
/ 15 февраля 2019

Используйте CHAR(9) для управления вкладками и CHAR(13) для разрывов строк.

declare @x varchar(100) = 'A';
set @x = @x + CHAR(13) + 'B';
set @x = @x + CHAR(9) + 'C';
print @x;

Результаты:

A
B   C

Если вы хотите заменить интервалы или вкладки, используйте REPLACE.

print REPLACE(@x, CHAR(9), '!')

Результаты:

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