php - 关于数据库事物和外键
本文介绍了php - 关于数据库事物和外键的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
情况是这样的:
表A
id int(11)
表B
a_id int(11)
表B的a_id是表A主键的外键
----------- 万恶的分割线 ------------
我开启了mysql
的事物,然后某个操作需要先插入一条数据到表A
(以下简称操作一
),再插入数据到表B
(以下简称操作二
)。
操作二依赖操作一插入成功后返回的ID
在开启了事物的情况下,操作一成功之后,往表B插入数据,这时候会检测外键,虽然操作一成功了,但是由于事物还没有提交,所以表A里还没有那条数据,所以操作二会报错。。。
大家是怎么解决这个问题的(我目前的解决办法是取消外键索引!!!)?
解决方案
我试了下。操作二不会报错。你再找找别的原因吧
这篇关于php - 关于数据库事物和外键的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文