laravel 数据库迁移报错解决

WBOY
풀어 주다: 2016-06-20 12:53:35
원래의
1315명이 탐색했습니다.

创建数据迁移

使用 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=usersphp 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:refreshphp artisan migrate:refresh --seed
로그인 후 복사


원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿