Det enda tillförlitliga sättet att göra detta är att använda en tillfällig tabell, men det kommer inte att vara mycket SQL:
select * into #tmp from bad_table
truncate table bad_table
alter bad_table alter column silly_column int
insert bad_table
select cast(silly_column as int), other_columns
from #tmp
drop table #tmp