首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

拼接的字符串成长动态列,通过exec把这些列查询送到临时表有关问题

2012-02-27 
拼接的字符串成长动态列,通过exec把这些列查询送到临时表问题SQL codedeclare @sql varchar(200)set @sql

拼接的字符串成长动态列,通过exec把这些列查询送到临时表问题

SQL code
declare @sql varchar(200)set @sql = 'select 10 as id  into #t 'exec(@sql)select * from #tdrop table #t

假设这边的@sql是通过拼接生成的动态列的查询语句,现在想把这个查询语句放到临时表#t里面,但是好像会报错。

[解决办法]
SQL code
select * from (select 10 as id)t  into #t
[解决办法]
不能这样写的.
SQL code
declare @sql varchar(200)create table #t(id int)set @sql = 'select 10 as id'insert into #t exec(@sql)select * from #t/*id-----------10(1 行受影响)*/drop table #t
[解决办法]
SQL code
declare @sql varchar(200)create table #t(id int)set @sql = 'select 10 as id'insert into #t exec(@sql)select * from #t
[解决办法]
1楼不是写给你select ... into ...的用法了么?
探讨
但是前提条件#t表是不知道表结构的,这样做不行了

[解决办法]
SQL code
--写错了,改下,汗select * into #t from (select 10 as id)t
[解决办法]
SQL code
--我晕,静态的你会了,改动态的不会?declare @sql varchar(200)if object_id('#t') is not null drop table #tset @sql = 'select * into #t from (select 10 as id)t'exec(@sql)select * from #t 

热点排行