php - 将数据移动到新的 MySQL

标签 php mysql sql laravel

我需要将数据从旧应用程序传输到新版本。问题是我的新版本具有更复杂的数据库结构,我不知道将数据移动到新数据库的最佳方法是什么。

例如:

旧表用户

id username  namensurname   email   password   active( ENUM('active', 'blocked')...

我需要将其移至新数据库中,但新数据库分为 USER 表和 USER_PROFILE 表

USER table

id username  name surname  email  password  active(BOOL(0,1))

USER_PROFILE table

id  user_id  phone  status...

所以我的问题是我需要导出所有旧数据,但在导入新数据库之前我需要重新组织该数据。

对于每个用户,我需要在 USER_PROFILE 表中创建数据

我还需要将角色从enum更改为BOOL,因此新数据库中旧数据库中的“事件”应该为1, 对于“已阻止”,应该为 0。

我知道在新的数据库中我可以使用相同的ENUM数据来表示状态,但这不是重点,数据库更复杂,如果我知道如何实现,这只是我认为的几件事为此,我可以用数据库的其余部分来完成我需要的一切。

所以!问题是:

Is it possible, and if it is what is the best way to transfer data.

这两个应用程序都是使用 Laravel 4 开发的

最佳答案

您可以使用以下方法之一将数据迁移到新服务器:

  • 创建 seed class解析旧数据并将其插入新的数据库模式。您可以受益于使用新模型实例。
  • 创建一个脚本,在不使用 Laravel 的情况下进行迁移,并将数据直接处理到数据库中。

关于php - 将数据移动到新的 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25720756/

相关文章:

php - 如何在mysql select语句中回显COUNT个数?

php - CakePHP - 代码 $hasOne 的结果

mysql - SQL 连接实际上是如何工作的?

php - 使用ajax和json处理多个数据库行

MySQL:为什么外键失败?

sql - sql 注入(inject)攻击是否只是对具有表单的页面的威胁?

mysql - 如果一行未通过过滤器,则可以忽略结果组

php - 为 MySQL 唯一字段生成唯一值

php - mysql_unbuffred_query 不工作

php - 如何在接口(interface)文档中记录@throws