2013-05-25

DECLARE @SQL NVARCHAR(1000)
DECLARE @TableName Varchar(100)
DECLARE myCur CURSOR FOR SELECT object_name([object_id]) FROM sys.all_columns WHERE [object_id] IN 
  (SELECT [object_id] FROM  sys.all_objects WHERE [type] = 'U' AND NAME LIKE 'gTest%' ) 
  AND name = 'Del_Date' 
OPEN myCur
FETCH NEXT FROM myCur INTO @TableName

WHILE @@FETCH_STATUS = 0
BEGIN
  SET @SQL = N'EXECUTE sp_rename N''dbo.' + @TableName + '.Del_Date'', N''DelDate'', ''COLUMN'' '
  PRINT @SQL
  -- EXEC sp_executesql @sql  
  FETCH NEXT FROM myCur INTO @TableName
END
CLOSE myCur
DEALLOCATE myCur
create TABLE TestA ( ID INT PRIMARY KEY, Score INT, Sort INT )
DECLARE @N INT SET @N = 1
WHILE @N <= 100000 BEGIN   INSERT INTO TestA(ID,Score) SELECT @N,@N   SET @N = @N + 1 END  
;WITH T AS ( SELECT *, DENSE_RANK() OVER (ORDER BY Score) AS NewSort   FROM   TestA)   UPDATE T SET Sort = NewSort ;

你可能感兴趣的:(2013-05-25)