我在c# 代码中执行了语句:update stopsend_userinfo set zhye = 371.37 where fgsbh = '43010504' and yhh = '0504032184',zhye原值为 50,update之后再执行 select zhye from stopsend_userinfo where fgsbh = '43010504' and yhh = '0504032184' 取出zhye写日志,日志中记录zhye=371.37,说明当时更新了,但是过了一天之后再去后台表中查询,zhye却还是原来的值 50,以上代码在监控程序中执行的,数据量比较大,其它的update后都更新成功了,只有极个别用户发生上面描述的情况。   由于数据量比较大且以上代码都在监控中完成,只能写日志来跟踪,每次只能问题出现后再来反查,从记录的日志来看当时是更新成功了,但还是有个别用户出现上述情况。   在线等待!!!!!!!!!!!!!!!!1

解决方案 »

  1.   

    1、是否commit?
    2、有可能被再次修改了。
      

  2.   


       sql语句是在System.Data.OracleClient提供的方法中执行的,应该不存在没有commit的问题。代码中也没有别的地方修改表中zhye这个字段。
     
      

  3.   

    同一会话中update后不commit,再执行查询,结果返回的是更新后的值。你的问题应该是没有提交,检查一下在C#中有没有设置自动提交或update后显示提交
      

  4.   

    1、有没有commit
    2、是不是又被其他人update回来,或者有什么代码进行了操作