declare @code varchar(20)
select @code = '21'
declare @sqlcod varchar(1024)
set @sqlcod=' select IDENTITY(int, 1,1) AS ID_Num, *  into  ##temp  from custrights where tt_code='''+@code+''''
exec (@sqlcod)
select * from ##temp

解决方案 »

  1.   

    declare @code varchar(20)
    select @code = '21'
    declare @sqlcod varchar(1024)create table #tem1(id_num int identity(1,1),其他列....)set @sqlcod='insert #tem1 (除了id_num的其他列) select  *  from custrights where tt_code='''+@code+''''
    exec (@sqlcod)select * from #tem1
      

  2.   

    declare @code varchar(20)
    select @code = '21'
    declare @sqlcod nvarchar(1024)
    set @sqlcod=N' select IDENTITY(int, 1,1) AS ID_Num, *  into  #temp  from custrights where tt_code='+@code + ' select * from #temp '
    execute sp_executesql @sqlcod,N'@code char(20)',@code
      

  3.   

    TRY:declare @code varchar(20)
    select @code = '21'
    declare @sqlcod nvarchar(1024)
    select identity(int,1,1) as id_num,* into #temp from custrights where 1=2
    set @sqlcod=N'insert into (col1,col2....ID_NUM不要放进来) select *  into  from custrights where tt_code='+@code
    execute @sqlcod
    select * from #temp
      

  4.   

    TRY:declare @code varchar(20)
    select @code = '21'
    declare @sqlcod nvarchar(1024)
    select identity(int,1,1) as id_num,* into #temp from custrights where 1=2
    set @sqlcod=N'insert into (col1,col2....ID_NUM不要放进来) select *  into  from custrights where tt_code='+@code
    execute @sqlcod
    select * from #temp