declare @sql varchar(8000)
set @sql=''
select @sql='+'+name from syscolumns where id=object_id('表名')
set @sql='select '+stuff(@sql,1,1,'')+' from 表名'
exec(@sql)
set @sql=''
select @sql='+'+name from syscolumns where id=object_id('表名')
set @sql='select '+stuff(@sql,1,1,'')+' from 表名'
exec(@sql)
declare @sql varchar(8000)
set @sql=''
select @sql=@sql+'+'+name from syscolumns where id=object_id('表名')
set @sql='select '+stuff(@sql,1,1,'')+' from 表名'
exec(@sql)
create table tb
(
a varchar(10),
b varchar(10),
c varchar(10)
)
insert tb
select 'AAA','BBB','CCC' union
select 'DDD','EEE','GGG' --测试
declare @sql varchar(8000)
set @sql=''
select @sql=@sql+'+'+name from syscolumns where id=object_id('tb')
set @sql='select '+stuff(@sql,1,1,'')+' from tb'
exec(@sql)--删除测试环境
drop table tb
--结果
/*
------------------------------
AAABBBCCC
DDDEEEGGG
*/
a(5) b(3) c(4)
aaaaa null cccc
我要求的结果是:
aaaaa cccc
这该怎么办?
(
a varchar(10),
b varchar(10),
c varchar(10)
)
insert tb
select 'AAA','BBB',null union
select 'DDD','EEE','GGG' --测试
declare @sql varchar(8000)
set @sql=''
select @sql=@sql+'+isnull('+name + ','''')'from syscolumns where id=object_id('tb')
set @sql='select '+stuff(@sql,1,1,'')+' from tb'
exec(@sql)--删除测试环境
drop table tb
set @sql=''
select @sql=@sql+'+isnull(['+name+'],space('+convert(varchar,length)+'))' from syscolumns where id=object_id('tb')
set @sql='select '+stuff(@sql,1,1,'')+' from tb'
exec(@sql)
會報錯﹕Operand type clash: image is incompatible with smalldatetime