Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.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
使用Laravel将数据从表迁移到不同的表_Laravel_Laravel 5.1_Laravel Migrations - Fatal编程技术网

使用Laravel将数据从表迁移到不同的表

使用Laravel将数据从表迁移到不同的表,laravel,laravel-5.1,laravel-migrations,Laravel,Laravel 5.1,Laravel Migrations,我正在处理Laravel上的一个现有项目,我需要更改当前的数据库模式并保留当前的数据 例如,我在初始迁移中有一个表: 人 但现在,我需要将其分为两个表: 人 个人电话 因此,在新迁移中,我从Person中删除PhoneNumber并添加新表PersonPhone 有没有办法将PhoneNumber映射到新表并在Person表中保留PhoneId和PersonId?或者唯一的方法是创建一个MySQL脚本?是的,您需要创建一个透视表和所需的类 我找到了这个让你开始: == 您可以创建迁移并设置模式来

我正在处理Laravel上的一个现有项目,我需要更改当前的数据库模式并保留当前的数据

例如,我在初始迁移中有一个表:

但现在,我需要将其分为两个表:

个人电话

因此,在新迁移中,我从Person中删除PhoneNumber并添加新表PersonPhone


有没有办法将PhoneNumber映射到新表并在Person表中保留PhoneId和PersonId?或者唯一的方法是创建一个MySQL脚本?

是的,您需要创建一个透视表和所需的类

我找到了这个让你开始:

==

您可以创建迁移并设置模式来处理它:


这不是问题,我想要的是迁移数据,我的意思是,保留当前数据并映射到新模式。我一直在遵循文档,事实上一些表数据已经很好地迁移了,因为我只添加了一个新列,这没关系,但我的问题是与示例中的表类似,我将列移动到了一个新表中。对不起,投票失败的原因是什么?
----------------------------------------------
| **Id**        |**Name**  | **PhoneNumber** |
----------------------------------------------
|             1 | John Doe | 111-55-5855     |
----------------------------------------------
|             2 | Jane Doe | 111-55-5521     |
----------------------------------------------
----------------------------
| **Id**        |**Name**  |
----------------------------
|             1 | John Doe |
----------------------------
|             2 | Jane Doe |
----------------------------
---------------------------------------------------
| **PhoneId**   | **PersonId**  | **PhoneNumber** |
---------------------------------------------------
|             1 |             1 | 111-55-5855     |
---------------------------------------------------
|             2 |             2 | 111-55-5521     |
---------------------------------------------------