-- 如果向变量表 插入数据的表是一个字符串形式,怎么办?declare @myTable TABLE(ArticleId int)
declare @t varchar(1000)
set @t = 'select top 10 * from article'
insert into @myTable select ArticleId from @t
错!
declare @t varchar(1000)
set @t = 'select top 10 * from article'
insert into @myTable select ArticleId from @t
错!
declare @t varchar(1000)
set @t = 'select top 10 * from article'
insert into @myTable exec(@t)
服务器: 消息 197,级别 15,状态 1,行 12
无法在向表插入变量时将 EXECUTE 用作源。
歹势啊!俺用的是Sql2005,以上语句执行没问题,如果要在Sql2000中运行我还没地方测试了
但表变量不支持
insert into ...exec ()的语句
建议不用表变量而改用临时表
改为
create TABLE #myTable(ArticleId int)
declare @t varchar(1000)
set @t = 'select top 10 articlid from article'
insert into #myTable exec(@t)
用完#mytable后
再
drop table #mytable