print 的结果是什么?try
set @sql='insert into [dbo].[dumpcalpddata1] ( DumpCalId , PlantId , ChanIndex,Description , TestId , TestDateTime , MaxmVmag , MinmVmag , AvgmVmag ,MaxpCmag , MinpCmag , AvgpCmag ,MaxPhaseAngle, MinPhaseAngle ,AvgPhaseAngle ,DataRecTotal , CycleTotal, TestWaitTime ,TestTable ) (select a.DumpCalId , a.PlantId , a.ChanIndex,a.Description , a.TestId , a.TestDateTime , a.MaxmVmag , a.MinmVmag , a.AvgmVmag , a.MaxpCmag , a.MinpCmag , a.AvgpCmag ,a.MaxPhaseAngle, a.MinPhaseAngle , a.AvgPhaseAngle , a.DataRecTotal , a.CycleTotal, a.TestWaitTime ,a.TestTable from [dbo].[dumpcalpddata] as a where a.DumpCalId = '''+cast(@q as varchar(10))+'''后面的
set @sql=@sql+ cast (@q as varchar(10)) +')'
不要了。

解决方案 »

  1.   

    失误!纠正一下。
    set @sql='insert into [dbo].[dumpcalpddata1] ( DumpCalId , PlantId , ChanIndex,Description , TestId , TestDateTime , MaxmVmag , MinmVmag , AvgmVmag ,MaxpCmag , MinpCmag , AvgpCmag ,MaxPhaseAngle, MinPhaseAngle ,AvgPhaseAngle ,DataRecTotal , CycleTotal, TestWaitTime ,TestTable ) (select a.DumpCalId , a.PlantId , a.ChanIndex,a.Description , a.TestId , a.TestDateTime , a.MaxmVmag , a.MinmVmag , a.AvgmVmag , a.MaxpCmag , a.MinpCmag , a.AvgpCmag ,a.MaxPhaseAngle, a.MinPhaseAngle , a.AvgPhaseAngle , a.DataRecTotal , a.CycleTotal, a.TestWaitTime ,a.TestTable from [dbo].[dumpcalpddata] as a where a.DumpCalId = '''+cast(@q as varchar(10))+''''
      

  2.   

    可以了,,可以运行结果了
    为什么不用执行exec(@sql)就能自动执行@sql了啊?不明白?
      

  3.   

    不会吧?动态SQL语句是要通过exec(@sql)的方式执行的啊!你没用就出结果了?不会吧?确认一下。
      

  4.   

    [Quote=引用 4 楼 hao1hao2hao3 的回复:]
    引用 3 楼 redphase 的回复:
    引用 2 楼 hao1hao2hao3 的回复:
    失误!纠正一下。还是不行啊!~我看错了
      

  5.   

    需要exec(@sql),上面指的是set的那句不要了
      

  6.   

    set @sql='insert into [dbo].[dumpcalpddata1] ( DumpCalId , PlantId , ChanIndex,Description , TestId , '+'TestDateTime , MaxmVmag , MinmVmag , AvgmVmag ,MaxpCmag , MinpCmag , AvgpCmag ,MaxPhaseAngle,'+' MinPhaseAngle ,AvgPhaseAngle ,DataRecTotal , CycleTotal, TestWaitTime ,'+'TestTable ) (select a.DumpCalId , a.PlantId , a.ChanIndex,a.Description ,' +'a.TestId , a.TestDateTime , a.MaxmVmag , a.MinmVmag , a.AvgmVmag , a.MaxpCmag ,'+'a.MinpCmag , a.AvgpCmag ,a.MaxPhaseAngle, a.MinPhaseAngle , a.AvgPhaseAngle , a.DataRecTotal , a.CycleTotal, a.TestWaitTime '+',a.TestTable from [dbo].[dumpcalpddata] as a where a.DumpCalId = '+cast(@q as varchar(10)) +' )'还是字符串整理成sql语句的问题 解决了!散分!