为什么我在代码里开了事务后,再调用mysql的存储过程,存储过程并不在我开启的事务里执行?事务mysql

解决方案 »

  1.   

    建议详细描述一下场景。理论上应该会在事务中。会不会是你的存储过程中操作的MYISAM的存储引擎的表?
      

  2.   

    从三个方面入手 :
    1.查看数据库表示什么存储引擎,看看是否支持事务 ?
    2.检查Mysql自动提交 (AutoCommit ) 是否没有关闭 ?
    3.检查目标操作,是否写在合适的位置(注意存储过程中脚本代码的逻辑顺序) ?
      

  3.   


    引擎是InnoDB。
    AutoCommit需要手动关闭吗?时间太紧,已经放弃用存储过程了。不过按理不会出这种问题。谢谢各位