print 每一步的变量,一步一步的调试

解决方案 »

  1.   

    从上面的过程中没有找到给lshj 赋值的代码declare @lshj dec(12,2) --零售价insert into spkfk(spid ,spbh,lshj ,shlv) 
    values(@spid , @spbh,@lshj ,@shlv)insert into spkfk(spid ,spbh,lshj ,shlv) 
    values(@spid , @spbh,@lshj ,@shlv) 
      

  2.   

    不行就 SQL  的调试吧 一点点跟着走
      

  3.   

    你定义了这个@lshj而没赋值,这个@lshj为null,是不是数据表里lshj非空啊。
      

  4.   

    请问该在那几处给@lshj赋值呢? 我在set @ydjbh='' 
    set @spbh='' 
    set @spid='' 
    此处加了set @lshj=''
    还有一处select @ydjbh=case fieldname when 'ydjbh' then left(fieldvalue,11) else @ydjbh end, 
    @spbh=case fieldname when 'spbh' then left(fieldvalue,15) else @spbh end , 
    @spid=case fieldname when 'spid' then left(fieldvalue,11) else @spid end , 
    此处加了@lshj = case  when fieldname='lshj' and isnumeric(fieldvalue)=1 then cast(left(fieldvalue,50) as int) else @lshj end , 
    @shlv = case  when fieldname='shlv' and isnumeric(fieldvalue)=1 then cast(left(fieldvalue,50) as int) else @shlv end , 后语法检查没有错误。但就是不执行!
      

  5.   

    给楼主个建议就是 一步步的查询 一步步的通过SQL的调试进行找问题, 我想应该是过程的流程和你预想不一样, 调试看看过程是怎么走的然后同时还能看见每个数值是多少 ~~  这样很容易找到问题在哪的~~