Как мне выполнить очень длинный динамический SQL-оператор?

Я помню, что в тот день я сделал бы целую кучуnvarchar(4000) vars, проверьте длину их по мере их роста, выключите их, когда они заполнятся, а затем объедините весь беспорядок вместе для вызова exec. Мне было интересно, есть ли более простой способ сделать это.

Спасибо!

Редактировать:

Пример кода, показывает, как я облажался

DECLARE @sql NVARCHAR(MAX)
SELECT @sql = CAST(N'SELECT ' AS NVARCHAR(MAX))

DECLARE @Index INT
SELECT @Index = 0

WHILE (@Index < 1000)
BEGIN
 SELECT @sql = CAST(@sql AS NVARCHAR(MAX)) + CAST(N'          ' AS NVARCHAR(MAX)) + CAST( CASE @Index WHEN 1 THEN N' ' END AS NVARCHAR(MAX))
 SELECT @Index = @Index + 1
END
SELECT @sql = CAST(@sql AS NVARCHAR(MAX)) + CAST(1 AS NVARCHAR(MAX))

SELECT LEN(@sql)
EXECUTE sp_executesql @sql

Ответы на вопрос(2)

Ваш ответ на вопрос