declare @iDays int
declare @dt varchar(50)
set @dt='2009-07-01'
select @iDays=day(dateadd(d,-Day(dateadd(m,1,convert(datetime,@dt))),dateadd(m,1,convert(datetime,@dt))))
print @iDays