gpt4 book ai didi

mysql - 对于 MySQL,是否有工具可以从一个表中转储一组行,并从所有相关表中转储所有相关(通过外键)行?

转载 作者:可可西里 更新时间:2023-11-01 07:45:29 24 4
gpt4 key购买 nike

我正在使用 MySQL 数据库。

我想从一个表中转储一组行,如果这些行具有指向其他表上的行的外键,我也想转储它们。

然后我想将这些转储加载到不同数据库中各自的表中(例如使用 LOAD DATA INFILE 命令)。所以简单地使用 select...join...into outfile 是不够的,因为结果将是一个大的连接表。

例如,表 A 有 B_id 和 C_id 列,分别指向表 B 和 C 上的行。因此,当我从表 A 中转储 3 行时,B 中的 3 个相关行和 C 中的 3 个相关行也被转储。

是否存在这样的工具/脚本?

编写一个脚本来做到这一点是非常可行的,但如果已经存在这样的工具,我不想重新发明轮子。

最佳答案

我的建议:

  1. 为导出创建临时表,例如A_export、B_export、C_export 等等。
  2. 用您要导出的行填充这些新表。使用从支持表 B、C、... 到 A_export 的连接查询使其更容易。
  3. 使用 mysqldump 转储这些表
  4. 将生成的转储文件导入目标数据库
  5. 重命名目标数据库中的表,删除“_export”后缀

关于mysql - 对于 MySQL,是否有工具可以从一个表中转储一组行,并从所有相关表中转储所有相关(通过外键)行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10240037/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com