那要用,在查询时生成SQL语句的方法:比如: 显示表:aadeclare @sql varchar(8000) set @sql='select ' select @sql=@sql+'['+col_china_name+']=['+col_name+'],' from Sys_Tab where tab_name='aa' set @sql=left(@sql,len(@sql)-1)+' from aa' exec(@sql)
做成存储过程就是这样写: create proc p_show @tbname varchar(250) as declare @sql varchar(8000) set @sql='select ' select @sql=@sql+'['+col_china_name+']=['+col_name+'],' from Sys_Tab where tab_name=@tbname set @sql=left(@sql,len(@sql)-1)+' from '+@tbname exec(@sql)
1: 在设计表时指定描述,或用sp_addextendedproperty加入字段描述 2:用如下视图Create view fielddesc as select o.name as oname, c.name as cname,convert(varchar(30),p.value) as value,p.smallid as psmallid,t.name as tname from syscolumns c join systypes t on c.xtype = t.xtype join sysobjects o on o.id=c.id left join sysproperties p on p.smallid=c.colid and p.id=o.id where o.xtype='U'
显示表:aadeclare @sql varchar(8000)
set @sql='select '
select @sql=@sql+'['+col_china_name+']=['+col_name+'],'
from Sys_Tab where tab_name='aa'
set @sql=left(@sql,len(@sql)-1)+' from aa'
exec(@sql)
create proc p_show @tbname varchar(250)
as
declare @sql varchar(8000)
set @sql='select '
select @sql=@sql+'['+col_china_name+']=['+col_name+'],'
from Sys_Tab where tab_name=@tbname
set @sql=left(@sql,len(@sql)-1)+' from '+@tbname
exec(@sql)
2:用如下视图Create view fielddesc
as
select o.name as oname, c.name as cname,convert(varchar(30),p.value) as value,p.smallid as psmallid,t.name as tname
from syscolumns c
join systypes t on c.xtype = t.xtype
join sysobjects o on o.id=c.id
left join sysproperties p on p.smallid=c.colid and p.id=o.id
where o.xtype='U'