如何更新具有外键约束的数据库?
How to update a database that has foreign keys constraints?
我有一台虚拟机 (VM_A) 运行 有一个 mysql 数据库 DB_A 模式,在他的 tbl_1 中有 200 行。在另一个虚拟机 (VM_B) 中,运行 是相同 DB_A 模式的副本,我在 tbl_1 中有 50 行。
我想用 DB_A 中的数据更新 DB_B。
tbl_2 持有来自 tbl_1 的外键。
我已经在 DB_B 中进行了从 DB_A 到 运行 的 mysql 转储,待更新。
我不想在删除之前使用删除模式 tbl_1。
如果我尝试 运行 DB_B 中的代码,我将遇到 tbl_2 中的外键约束引起的错误。
在这种情况下更新 DB_B 的最佳方法是什么?
我已经测试过这个解决方案但没有奏效 https://dba.stackexchange.com/questions/40046/is-there-a-way-to-truncate-table-that-has-foreign-a-key
https://dba.stackexchange.com/questions/40046/is-there-a-way-to-truncate-table-that-has-foreign-a-key 是 ms sql-服务器。在 mysql 中修改您的会话变量
SET FOREIGN_KEY_CHECKS=0;
我有一台虚拟机 (VM_A) 运行 有一个 mysql 数据库 DB_A 模式,在他的 tbl_1 中有 200 行。在另一个虚拟机 (VM_B) 中,运行 是相同 DB_A 模式的副本,我在 tbl_1 中有 50 行。
我想用 DB_A 中的数据更新 DB_B。
tbl_2 持有来自 tbl_1 的外键。
我已经在 DB_B 中进行了从 DB_A 到 运行 的 mysql 转储,待更新。
我不想在删除之前使用删除模式 tbl_1。
如果我尝试 运行 DB_B 中的代码,我将遇到 tbl_2 中的外键约束引起的错误。
在这种情况下更新 DB_B 的最佳方法是什么? 我已经测试过这个解决方案但没有奏效 https://dba.stackexchange.com/questions/40046/is-there-a-way-to-truncate-table-that-has-foreign-a-key
https://dba.stackexchange.com/questions/40046/is-there-a-way-to-truncate-table-that-has-foreign-a-key 是 ms sql-服务器。在 mysql 中修改您的会话变量
SET FOREIGN_KEY_CHECKS=0;