Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 数据库迁移(MYSQL)_Php_Mysql_Sql - Fatal编程技术网

Php 数据库迁移(MYSQL)

Php 数据库迁移(MYSQL),php,mysql,sql,Php,Mysql,Sql,你好,我已经用php和mysql开发了一个系统。从5个系统变成1个系统。基本上,在system 1中存在一个巨大的可能性,即有一个用户表和主键。其他系统也是如此 我的问题是在当前开发的系统中有相同的主ID需要迁移。 在system 1中,用户表中有70000个数据。系统2,22000条记录。在其他系统中不足3000个。不幸的是,主键是其他表中的外键 如何迁移这些数据而主键不发生冲突,以及如何更新外键 请提供帮助。您必须在各种用户记录和新的合并用户主表之间创建映射。请注意,这不仅适用于用户,也适用

你好,我已经用php和mysql开发了一个系统。从5个系统变成1个系统。基本上,在system 1中存在一个巨大的可能性,即有一个用户表和主键。其他系统也是如此

我的问题是在当前开发的系统中有相同的主ID需要迁移。 在system 1中,用户表中有70000个数据。系统2,22000条记录。在其他系统中不足3000个。不幸的是,主键是其他表中的外键

如何迁移这些数据而主键不发生冲突,以及如何更新外键


请提供帮助。

您必须在各种用户记录和新的合并用户主表之间创建映射。请注意,这不仅适用于用户,也适用于其他类型的数据

创建映射表时,将有一个新的用户id字段、一个旧的用户id字段和一个标识源系统的字段。然后按源系统将用户复制到映射表中,并在复制过程中指定源系统。通过这种方式,您可以区分不同源系统中具有相同用户ID的用户,并生成新的用户ID


从包含用户id的源系统迁移其他数据时,需要使用映射表将旧用户id替换为新用户id。

可以在每个表中添加一列
source\u system
,并在当前id列和新id列上构建唯一键。或者你必须迁移并使用新的idssho谢@Nico我所做的,临时地,我生成了一个新的id。