Home > Backend Development > PHP Tutorial > laravel 数据库迁移报错解决

laravel 数据库迁移报错解决

WBOY
Release: 2016-06-20 12:53:35
Original
1332 people have browsed it

创建数据迁移

使用 Artisan 命令行的 migrate:make 命令创建一个迁移:(在命令行模式下使用)

php artisan migrate:make create_users_table
Copy after login

所有的迁移都被存放在 app/database/migrations 文件夹下,文件以时间戳命名以方便Laravel框架按时间来界定这些文件顺序.

您可以在创建迁移的时候使用 --path 选项,用来指定迁移文件存放的路径.该路径是你安装框架根目录的相对路径:

php artisan migrate:make foo --path=app/migrations
Copy after login

--table 和 --create 选项用来指定表名以及是否创建一个新表:

php artisan migrate:make add_votes_to_user_table --table=usersphp artisan migrate:make create_users_table --create=users
Copy after login

运行数据迁移

运行所有迁移(使你的所有表保持最新)

php artisan migrate
Copy after login

运行某个路径下的所有迁移(指定迁移文件路径)

php artisan migrate --path=app/foo/migrations
Copy after login

运行某个包下的所有迁移(安装或升级某个扩展包对应数据库时候使用)

php artisan migrate --package=vendor/package
Copy after login

注意: 如果在运行迁移的时候收到一个 "class not found" 的错误,请尝试运行 composer dump-autoload 命令.

在生产环境中强制使用数据迁移

有些迁移操作具有破坏性,会导致你丢失数据库中原有数据.为了防止你运行这样的命令造成不必要的破坏,这些命令运行的时候会询问你是否确定要这样做.如果你想运行这样的命令而不出现提示,可以使用 --force 选项:

php artisan migrate --force
Copy after login

回滚数据迁移(即使回滚,原有数据也被破坏了,只能回滚表结构,所以别拿这个功能当救命稻草)

回滚最后一次迁移

php artisan migrate:rollback
Copy after login


不要着急: 运行 composer dump-autoload

再试一次,ok.见图。

回滚所有迁移

php artisan migrate:reset
Copy after login

回滚所有迁移并重新运行数据迁移

php artisan migrate:refreshphp artisan migrate:refresh --seed
Copy after login


source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template