获取指定表名的所有列,按逗号分割好,很适用
create proc [dbo].[p_showcolname]
(@tabname varchar(50))
as
begin
declare @colname varchar(2000),@subname varchar(100),@cnt int,@i int
select @cnt=max(colorder) from syscolumns a
where id in(select id from sysobjects where name=@tabname)
select @i=0
select @colname=''
while(@i<@cnt)
begin
select @subname=isnull([name],'')+','
from syscolumns a
where id in(select id from sysobjects where name=@tabname) and colorder=(@i+1)
if(@@rowcount>0)
begin
select @colname=@colname+@subname
end
select @i=@i+1
end
print left(@colname,len(rtrim(@colname))-1)
end