declare @sql varchar(100)
declare @temp nvarchar(100)set @temp='ttaxfee_send'+substring(convert(char(10),getdate(),20),1,4)+substring(convert(char(10),getdate(),20),6,2)+substring(convert(char(10),getdate(),20),9,2)set @sql='select * into '+@temp+  ' from ttaxfee_send  where ttaxfee_send.MaketTime<=DateAdd(m, -6, getDate()))'
print @sql
exec(@sql)

解决方案 »

  1.   

    --楼主,上面的错了,这个是正确的
    --你定义的@sql太短了.declare @sql varchar(200)
    declare @temp nvarchar(100)set @temp='ttaxfee_send'+substring(convert(char(10),getdate(),20),1,4)+substring(convert(char(10),getdate(),20),6,2)+substring(convert(char(10),getdate(),20),9,2)set @sql='select * into '+@temp+  ' from ttaxfee_send  where ttaxfee_send.MaketTime<=DateAdd(m, -6, getDate()))'
    print @sql
    exec(@sql)
      

  2.   

    declare @sql varchar(200)
    declare @temp nvarchar(100)set @temp='ttaxfee_send'+substring(convert(char(10),getdate(),20),1,4)+substring(convert(char(10),getdate(),20),6,2)+substring(convert(char(10),getdate(),20),9,2)set @sql='select * into '+@temp+  ' from ttaxfee_send  where ttaxfee_send.MaketTime<=DateAdd(m, -6, getDate())'
    print @sql
    exec(@sql)--这个才是完全正确的,上面的多了一个")"号