从 Yii 或 Laravel 中的现有数据库生成迁移
我正在处理一个具有相当复杂的数据库(150多个表)的项目。为了能够维护更改,我决定添加迁移,最好使用 Yii 或 Laravel。
有谁知道,是否有可能从现有数据库生成初始迁移?
手动创建它将:
- 永远服用
- 非常容易出错。
如果没有方法,有没有人知道一个好的基于PHP的框架,支持这样的功能?
我正在处理一个具有相当复杂的数据库(150多个表)的项目。为了能够维护更改,我决定添加迁移,最好使用 Yii 或 Laravel。
有谁知道,是否有可能从现有数据库生成初始迁移?
手动创建它将:
如果没有方法,有没有人知道一个好的基于PHP的框架,支持这样的功能?
在 Yii 中完成此操作的说明:
将数据库连接设置添加到 。protected/config/console.php
运行以创建迁移的存根代码。yiic migrate create initial
将此要点的内容复制到 。protected/commands/InitialDbMigrationCommand.php
运行以生成和初始数据库迁移的方法。yiic initialdbmigration 'name_of_your_database' > initial_migration.php
up()
down()
将和方法从 复制并粘贴到步骤 2 中在文件夹中创建的文件。up()
down()
initial_migration.php
protected/migrations
'Doctrine Project'(又名 Doctrine)能够为现有数据库结构创建数据库迁移,因此您可以重新创建现有结构。它可以很容易地在Symfony,Laravel,Yii和许多框架中实现。
样品来自:
http://symfony.com/legacy/doc/doctrine/1_2/en/07-Migrations
从数据库
如果有现有数据库,则可以生成一组迁移类,这些迁移类将通过运行以下命令重新创建数据库。
$ ./symfony doctrine:generate-migrations-db
从模型
如果您有一组现有的模型,则可以生成一组迁移类,这些迁移类将通过运行以下命令来创建数据库。
$ ./symfony doctrine:generate-migrations-models