나는 데이터베이스의 모든 테이블을 삭제,하지만 내 오류입니다 게다가?내가 마이그레이션 할 수 없습니다 테이블 다시
답변
은 내가 질문 테이블에 대한 부팅에 미들웨어를 가지고, 그것을 발견이 추가 :
if(\Schema::hasTable('questions')) {
....
}
데이터베이스에서 실제로 모든 테이블을 제거하는 것은 불가능합니다.
migrations
테이블을 포함하여 모든 테이블을 정말로 삭제했는지 확인하십시오. 모든 마이그레이션을 되돌리려 할 때
보통은 실행해야합니다
php artisan migrate:reset
을이 실행할 수있는 당신이 Laravel 5.5을 실행하는 한 가정하지 않은 경우 :
php artisan migrate:fresh
나는 것 Migrations documentation 전체를 읽고 어떻게 작동하는지 그리고 어떻게 만들어야하는지 알리십시오. 사실 당신은 수동으로 테이블을 제거하고 바로 실행되지해야합니다
php artisan migrate:rollback
는 마이그레이션 이전에 실행하거나 이미 하나 하나 개 앞서 언급 한 롤백 명령 또는 롤백을 실행하고 다시 마이그레이션을 실행할 수 있습니다 말했듯이 롤백.
을 마이그레이션 할'시도를 .swallow 사용중인 응용 프로그램이 사용하고 있다고 생각하는 데이터베이스를 사용하고 있습니까? 'php artisan migrate : status'를 실행하여 어떤 마이 그 레이션이 실행되었는지 확인하고'.env'를보고 데이터베이스 이름을보고'php artisan config : clear'을 실행하여 이전 데이터베이스 연결이 캐시되지 않았는지 확인하십시오. –
@amini 그 오류가 다시 –
그래, 나는 확실하다 –
이미 DB에이 테이블이 있으므로이 오류가 발생합니다. 각 마이그레이션의 down()
메소드에 테이블을 삭제하고 php artisan migrate:rollback
명령을 사용하여 마지막으로 실행 된 마이그레이션 일괄 처리를 삭제해야합니다.
down()
방법으로 테이블을 삭제하지 않으면 5.5에서도 php artisan migrate:fresh
을 사용할 수 있습니다.
https://laravel.com/docs/5.5/migrations#rolling-back-migrations
가 아니면 그냥 수동으로 DB를 다시하고 php artisan migrate
명령을 실행할 수 있습니다.
아니요, 데이터베이스에 없으며 데이터베이스를 삭제하고 생성했습니다. 다시 –
당신은 실행할 수 있습니다
php artisan migrate:refresh
합니다 (마이그레이션 테이블을 포함하여) 모든 테이블을 롤백하고 다시 모든 것을 다시.
나는 그 오류를 다시 가지고있다 –
@ amini.swallow이 대답은 당신에게 도움이 되었습니까? –
아니요, 여기에는 AuthServiceProvider.php 때문에 답변을 드렸습니다. 미들웨어를 작성했습니다. 여기 내 대답을 확인하십시오. –
빈 데이터베이스와 작곡가 dumpautoload'는 내가 다시 –