创建数据迁移
使用 Artisan 命令行的 migrate:make
命令创建一个迁移:(在命令行模式下使用)
php artisan migrate:make create_users_table
所有的迁移都被存放在 app/database/migrations
文件夹下,文件以时间戳命名以方便Laravel框架按时间来界定这些文件顺序.
您可以在创建迁移的时候使用 --path
选项,用来指定迁移文件存放的路径.该路径是你安装框架根目录的相对路径:
php artisan migrate:make foo --path=app/migrations
--table
和 --create
选项用来指定表名以及是否创建一个新表:
php artisan migrate:make add_votes_to_user_table --table=users php artisan migrate:make create_users_table --create=users
运行数据迁移
运行所有迁移(使你的所有表保持最新)
php artisan migrate
运行某个路径下的所有迁移(指定迁移文件路径)
php artisan migrate --path=app/foo/migrations
运行某个包下的所有迁移(安装或升级某个扩展包对应数据库时候使用)
php artisan migrate --package=vendor/package
注意: 如果在运行迁移的时候收到一个 "class not found" 的错误,请尝试运行
composer dump-autoload
命令.
在生产环境中强制使用数据迁移
有些迁移操作具有破坏性,会导致你丢失数据库中原有数据.为了防止你运行这样的命令造成不必要的破坏,这些命令运行的时候会询问你是否确定要这样做.如果你想运行这样的命令而不出现提示,可以使用 --force
选项:
php artisan migrate --force
回滚数据迁移(即使回滚,原有数据也被破坏了,只能回滚表结构,所以别拿这个功能当救命稻草)
回滚最后一次迁移
php artisan migrate:rollback
不要着急: 运行 composer dump-autoload
再试一次,ok.见图。
回滚所有迁移
php artisan migrate:reset
回滚所有迁移并重新运行数据迁移
php artisan migrate:refresh php artisan migrate:refresh --seed
时间: 2024-10-13 09:24:21