Traversing the length modification field SqlServer

DECLARE DataClean CURSOR
FOR
    SELECT  a.name AS t_name ,
            b.name AS c_name ,
            c.DATA_TYPE
    FROM    sys.tables a
            JOIN sys.columns b ON b.object_id = a.object_id
            JOIN INFORMATION_SCHEMA.COLUMNS c ON b.name = c.COLUMN_NAME
            AND a.name = c.TABLE_NAME
OPEN DataClean
DECLARE @t_name VARCHAR(100) ,
        @c_name VARCHAR(100) ,
        @DATA_TYPE VARCHAR(100) 
FETCH NEXT FROM DataClean INTO @t_name, @c_name, @DATA_TYPE
WHILE @@FETCH_STATUS = 0 
    BEGIN        
        PRINT ('ALTER TABLE ' + @t_name + ' ALTER COLUMN  ' + @c_name+ '  NVARCHAR(2500)')
        EXEC ('ALTER TABLE ' + @T_name +  ' the ALTER the COLUMN   ' +  @c_name + '   NVARCHAR (2500) ' )
         the PRINT ( ' table: '  +  @t_name  +  ' - field: '  +  @c_name  +  ' - successfully modified ' )    
         the FETCH  the NEXT  the FROM DataClean the INTO  @t_name , @c_name , @DATA_TYPE 
    the END           
                        - the cursor is closed 
the CLOSE DataClean
                         -Release resources 
DEALLOCATE DataClean        

 

Guess you like

Origin www.cnblogs.com/zldqpm/p/11355798.html