0

I have the following query:

DECLARE @TableName VARCHAR(MAX)
DECLARE @Script VARCHAR(MAX) = ''
DECLARE @sql NVARCHAR(MAX)
DECLARE @fillfactor INT

DECLARE TableCursor CURSOR FOR
    SELECT '[' + OBJECT_SCHEMA_NAME([object_id]) + '].[' + name + ']' AS TableName
    FROM sys.tables

OPEN TableCursor
FETCH NEXT FROM TableCursor INTO @TableName

WHILE @@FETCH_STATUS = 0
BEGIN
    SET @sql = 'ALTER INDEX ALL ON ' + @TableName + ' REBUILD' + ')' 

    SELECT @Script = CAST(@Script + @sql AS VARCHAR(MAX))

    FETCH NEXT FROM TableCursor INTO @TableName
END

CLOSE TableCursor
DEALLOCATE TableCursor

PRINT @Script
GO

New to SQL Server. Right now it is limited to 8000 characters, I wanted to know how can I print @Script with all the tables and at the same time each line on @sql break into a new line.

marc_s
  • 732,580
  • 175
  • 1,330
  • 1,459
Nickso
  • 785
  • 1
  • 10
  • 32

0 Answers0