declare @tablename varchar(20)
select @tablename = 'o_ems'
-------------生成变量,使用表格形式(ctrl + D)输出,取第一个字段的值----------------------------------
select 'private '+
Case when t.name='varchar' Then 'string'
when t.name='char' Then 'string'
when t.name='datetime' Then 'datetime'
when t.name='int ' Then 'int'
when t.name='smallint' Then 'int'
when t.name='money' Then 'float'
when t.name='decimal' Then 'decimal'
when t.name='tinyint' Then 'byte'
else t.name end
+ ' _'+upper(substring(c.name,1,1))+lower(substring(c.name,2,(len(c.name)-1)))+';' as name /*,o.name,t.name,c.length,c.* ,isnull(m.text,'') */
from syscolumns c inner join sysobjects o on o.id=c.id
inner join systypes t on c.xtype=t.xtype
left outer join syscomments m on c.cdefault=m.id
where o.name =@tablename
order by c.id
-------------生成方法,使用文本形式(ctrl + T)输出----------------------------------
select '/// ' +char(13)+char(10)+'///'+char(13)+char(10)+'/// '+char(13)+char(10)
+ 'public '+ Case when t.name='varchar' Then 'string'
when t.name='char' Then 'string'
when t.name='datetime' Then 'datetime'
when t.name='int' Then 'int'
when t.name='smallint' Then 'int'
when t.name='money' Then 'float'
when t.name='decimal' Then 'decimal'
when t.name='tinyint' Then 'byte'
else t.name end
+ ' ' +upper(substring(c.name,1,1))+lower(substring(c.name,2,(len(c.name)-1)))+char(13)+char(10)
+ '{' +char(13)