在Symfony 2 / Doctrine 2中是否有“generate-migrations-db”等价物?

时间:2013-08-05 07:55:04

标签: php symfony doctrine-orm

以下是解释“generate-migrations-db”的内容的遗留文档:

http://symfony.com/legacy/doc/doctrine/1_2/en/07-Migrations

它说

  

从现有数据库连接生成迁移类   (doctrine-generate-migrations-db,doctrine-gen-migrations-from-db)

此外:

  

生成迁移

     

Doctrine提供了生成集合的能力   现有数据库或现有模型的迁移类以及   生成空白迁移类,供您填写代码   进行架构更改。

     

来自数据库

     

如果您有现有数据库,则可以构建一组迁移   通过运行以下命令重新创建数据库的类   命令。

     

$ ./symfony doctrine:generate-migrations-db

换句话说:它从数据库中获取模式并生成执行模式创建的迁移。在此过程中不使用任何实体,没有类,也不使用映射。它只需要一个DB并构建一个迁移类。

我们已经没有generate-migrations-db了。我们有什么能完成这项任务吗?我找不到。如果被其他命令取代,请告诉我。如果刚删除,请告知。

2 个答案:

答案 0 :(得分:6)

我不知道Doctrine或Migrations Bundle中为现有数据库创建迁移文件的命令。

所以这就是我如何做到的:

  1. 安装DoctrineMigrationsBundle
  2. 创建新的空白数据库
  3. 更新您的配置或参数以指向此空白数据库而不是您的“真实”数据库
  4. 运行php app/console doctrine:migrations:diff。这将创建一个从头开始创建数据库表等的迁移文件
  5. 更改您的配置/参数
  6. 希望这有用。

答案 1 :(得分:1)

查看DoctrineMigrationsBundle,它可以使用sql语句生成迁移类以进行迁移。

相关问题