mssql DataReader读取数据
根据系统表生成SqlDataReader代码
select 'pumphischart.'+a.name+'='+
case when b.name='varchar' then 'dr["'+a.name+'"]!=DBNull.Value?dr["'+a.name+'"].ToString():"";'
when b.name='nvarchar' then 'dr["'+a.name+'"]!=DBNull.Value?dr["'+a.name+'"].ToString():"";'
when b.name='decimal' and b.allownulls='0' then 'Convert.ToDecimal(dr["'+a.name+'"]);'
when b.name='decimal' and b.allownulls='1' then 'dr["'+a.name+'"]!=DBNull.Value?Convert.ToDecimal(dr["'+a.name+'"]):0;'
when b.name='int' and b.allownulls='0' then 'Convert.ToInt32(dr["'+a.name+'"]);'
when b.name='int' and b.allownulls='1' then 'dr["'+a.name+'"]!=DBNull.Value?Convert.ToInt32(dr["'+a.name+'"]):0;'
else 'dr["'+a.name+'"].ToString();' end
from syscolumns a left join systypes b on a.xusertype=b.xusertype
where id=object_id('视图名')