set @startYear = 2000 set @endYear=2011 set @startMonth=1 set @endMonth=12
while(@startYear<=@endYear) begin while(@startMonth<=@endMonth) begin set @yearStr = convert(nvarchar,@startYear,4) if(@startMonth<10) begin set @monthStr = '0'+convert(nvarchar,@startMonth,2) end else begin set @monthStr = convert(nvarchar,@startMonth,2) end set @dateStr = @yearStr +'-'+@monthStr print @dateStr exec('alter table test add ['+@dateStr+'] nvarchar(50) null') set @startMonth = @startMonth+1 end set @startYear = @startYear+1 print convert(nvarchar,@startYear,4) end