微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在mysql中先插入子表,然后插入父表

如何解决如何在mysql中先插入子表,然后插入父表

我尝试先插入transactions_detail,然后在transactions表中获取total_cost。

transactions_detail
detail_id,product_id,transactions_id,product_quantity
transactions
transactions_id,user_id,total_price,transactions_date

如何让transactions_detail表插入时,先id_transactions为null,然后如果事务表被填充,则两个表之间的id_transactions匹配

解决方法

您不能在 MySQL 中执行此操作。

要暂时打破引用约束,您需要数据库引擎实现“可延迟约束”,不幸的是 MySQL 没有实现这个标准 SQL 功能

您需要将数据库引擎切换到 PostgreSQL 或 Oracle 才能执行此操作。

在任何情况下,约束只能在交易期间无效。在交易中发出 COMMIT 的那一刻,所有约束都必须有效。这似乎是您的用例。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。