sql 主次存储过程 事务处理问题
现在有 一个 主存储过程 主存储过程调用 两个次存储过程
主存储过程有 事务 处理 两个次存储过程 没有事务处理
主存储过程 往 A表插入数据
主 调用 次存储过程① 往B表插入数据 成功返回 0 失败 返回 -1
主存储过程 接受返回值 0 正常执行 -1 执行回滚
主 调用 次存储过程② 一个 往C表插入数据 成功返回 0 失败 返回 -1
主存储过程 接受返回值 0 正常执行 -1 执行回滚
主存储过程 往 D表插入数据
如果 次存储过程① 执行失败 主存储过程 会 回滚, 会把 次存储过程① 执行的 也回滚吗?
如果 次存储过程② 执行失败 主存储过程 会回滚, 会把 次存储过程① 和 次存储过程② 执行的 也回滚吗?
如果 主存储过程 往 D表插入数据 执行失败 次存储过程①和次存储过程② 都会回滚吗?
[解决办法]
你在处理的过程中,把数据提交的语句commit;放在最后一步即可.
[解决办法]