程序里更新数据库时候,更新不了
查看日志,update....
          rollback
          update....
          rollback
显示以上相关的信息。
而程序里关于这个更新的语句,没有写rollback语句,这是怎么回事呢?只有几个存储过程里写了rollback,这应该没有关系的吧。操作更新语句的时候又没操作存储过程,我更新时候,对象表被锁住了?然后系统自动回滚了?
还有对象表没有主键,这有关系么?

解决方案 »

  1.   

    没有,日志显示,update....
    之后就直接rollback
      

  2.   

    估计表被其它进程锁住了,规定的时间内UPDATE语句没有执行成功就回滚了。
      

  3.   

    应该是在UPDATE的时候,表一直被LOCK的,然后等待超时后,就ROLLBACK了。
      

  4.   

    说是等待超时,那也得等会儿的吧,但是那是紧跟的....rollback,真是奇怪,改成存储过程里操作,又可以了。
      

  5.   

    可以设置慢查询,从日志中找出是不是被别的“进程”锁住了
    log-slow-queries=/data/log/www_langwan_com/mysql_slow.log
    long_query_time=1