Mam*_*dou 61 migration laravel laravel-4
我不想在laravel 4上运行All Outstanding Migrations.我有5次迁移.现在我只想运行一次迁移.而不是做:php artisan migrate我想运行一个特定的迁移,如:php artisan migrate MY_MIGRATION_TO_RUN
Ant*_*iro 50
看起来你做错了.
迁移由Laravel 按照它们创建的确切顺序逐个执行,因此它可以跟踪执行和执行顺序.这样,Laravel将能够安全地回滚一批迁移,而不会有破坏数据库的风险.
赋予用户手动执行它们的权力,使得无法知道(确定)如何回滚数据库中的更改.
如果您确实需要在数据库中执行某些操作,则最好创建一个DDL脚本并在Web服务器上手动执行它.
或者只是创建一个新的迁移并使用artisan执行它.
编辑:
如果您需要先运行它,则需要先创建它.
如果您只需要重新排序,请将文件重命名为第一个.使用时间轴创建迁移:
2013_01_20_221554_table
Run Code Online (Sandbox Code Playgroud)
要在此之前创建新迁移,您可以为其命名
2013_01_19_221554_myFirstMigration
Run Code Online (Sandbox Code Playgroud)
Pra*_*lla 38
只需将已运行的迁移移出app/config/database/migrations /文件夹即可.然后运行该命令php artisan migrate.对我来说就像一个魅力.
fic*_*489 29
您可以将迁移放在更多文件夹中,并执行以下操作:
php artisan migrate --path=/app/database/migrations/my_migrations
Run Code Online (Sandbox Code Playgroud)
Eri*_*bar 23
运行Laravel 4迁移时,一个很好的小片段可以缓解任何恐惧php artisan migrate --pretend.这将仅输出在运行实际迁移时已运行的SQL.
听起来你的最初4次迁移已经开始了.我猜想,当你php artisan migrate只运行新的,最近的迁移时.
建议:确保你的所有up()和down()都按照你期望的方式工作.我喜欢在运行迁移时运行up(),down(),up(),只是为了测试它们.如果你没有麻烦地进行5-6次迁移并且意识到你无法将它们回滚,那将是非常糟糕的,因为你没有将down()与up()100%匹配.
只是我的两分钱!希望有所--pretend帮助.
elf*_*fif 15
重新进行迁移的唯一方法是肮脏的.您需要打开数据库并删除迁移表中代表您的迁移的行.
然后再次运行php artisan migrate.
小智 11
如果你想在 Laravel 中运行(单个文件)迁移,你可以执行以下操作:
php artisan migrate --path=/database/migrations/migrations_file_name
Run Code Online (Sandbox Code Playgroud)
例如。
C:\xampp\htdocs\laravelv3s>php artisan migrate --path=/database/migrations/2020_02_14_102647_create_blogs_table.php
Run Code Online (Sandbox Code Playgroud)
您可以从终端创建用于迁移的单独目录,如下所示:
mkdir /database/migrations/my_migrations
Run Code Online (Sandbox Code Playgroud)
然后将要运行的特定迁移移动到该目录并运行以下命令:
php artisan migrate --path=/database/migrations/my_migrations
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助!
小智 5
您可以使用以下解决方案:
php artisan migrate:status。php artisan migrate:rollback --path:2018_07_13_070910_table_tests。php artisan migrate。最后,迁移特定的表。祝你好运。
| 归档时间: |
|
| 查看次数: |
68796 次 |
| 最近记录: |