sql= "update dfirm_zg set BM='" +bm[i] + "',ZGZH='" + zgzh[i] + "',PZWH='" + pzwh[i] + "',PZSJ='to_date('"+pzsj[i]+"','yyyy-mm-dd')',PZDW='" + pzdw[i] + "',SWDJH='" + swdjh[i] + "',SWDJRQ='to_date('"+swdjrq[i]+"','yyyy-mm-dd')' ,GSDJH='" + gsdjh[i]+ "',GSDJRQ=' to_date('"+gsdjrq[i]+"','yyyy-mm-dd')'  where FIRM_BM='"+firm_bm+"'";
        其中to_date那块是不是不太对头呢

解决方案 »

  1.   

    就是to_date不要用'号引起来。
      

  2.   

    to_date要转换的自动名不要加单引号
      

  3.   

    sql= "update dfirm_zg set BM='" +bm[i] + "',ZGZH='" + zgzh[i] + "',PZWH='" + pzwh[i] + "',PZSJ=to_date("+pzsj[i]+",'yyyy-mm-dd'),PZDW='" + pzdw[i] + "',SWDJH='" + swdjh[i] + "',SWDJRQ=to_date("+swdjrq[i]+",'yyyy-mm-dd') ,GSDJH='" + gsdjh[i]+ "',GSDJRQ=to_date("+gsdjrq[i]+",'yyyy-mm-dd')  where FIRM_BM='"+firm_bm+"'";
      

  4.   

    首先,得把 "',PZSJ='to_date('"+pzsj[i]+"','yyyy-mm-dd')',PZDW='"
    改成 "',PZSJ=to_date('"+pzsj[i]+"','yyyy-mm-dd'),PZDW='"
    下面类似。其次,要让to_date('"+pzsj[i]+"','yyyy-mm-dd') 运行得保证变量pzsj[i]的字符格式为
    yyyy-mm-dd 如2009-1-5 或2009-12-05如果再不行,建议把sql打印出来调试,或粘出来让大家看看。
      

  5.   

    sql= "update dfirm_zg set BM=' "+bm[i] + "',ZGZH='" + zgzh[i] + "',PZWH='" + pzwh[i] + "',PZSJ=to_date('"+pzsj[i]+"','yyyy-mm-dd'),PZDW='" + pzdw[i] + "',SWDJH='" + swdjh[i] + "',SWDJRQ=to_date('"+swdjrq[i]+"','yyyy-mm-dd') ,GSDJH='" + gsdjh[i]+ "',GSDJRQ= to_date('"+gsdjrq[i]+"','yyyy-mm-dd')  where FIRM_BM='"+firm_bm+"'"; 
      

  6.   

    把字符串打印出来,在sql 窗口里面运行下,就知道那里错啦