PHP 장인 마이그레이션 이전 데이터베이스 작성 오류 SQLSTATE의 Laravel5.x [42000] 해결

데이터 테이블을 생성하기 위해 이주 명령을 실행 Laravel5.x :php artisan migrate报错。

\ 데이터베이스 \의 QueryException를 조명 : SQLSTATE를 [42000] : 구문 오류 또는 액세스 위반 : 1071 지정된 키가 너무 깁니다; 최대 키 길이는 767 바이트 (SQL : 고유의`users_email_unique`를 추가 users``테이블을 변경 (`email`))

현재 laravel 요구 사항보다 낮은 데이터베이스 버전, laravel 기본 utf8mb4 지금 저장 이모티콘에 대한 지원이 포함되어 있기 때문에 위의 오류입니다.

당신은 MySQL의 v5.7.7을 실행하거나 나중에 경우,이 오류를보고하지 않습니다.

해결 방법 :

1, /app/Providers/AppServiceProvider.php 파일을 찾으려면 다음 코드를 추가합니다 (FIG)

스키마 :: defaultStringLength (191);

2, 다시 실행 : PHP는 장인 마이그레이션을

다음과 같습니다 AppServiceProvider.php 라인에서 16 : 클래스 '앱 \ 공급자 \ 스키마'을 (를) 찾을 수 없습니다

3, /app/Providers/AppServiceProvider.php 다음 코드 파일을 추가 (FIG)

를 분명히 \ 지원 \ 외관 \ 스키마를 사용한다;

네, 다시 실행 : PHP는 장인 마이그레이션을

(1)이 오류가있는 경우 : \ 데이터베이스 \의 QueryException를 조명 : SQLSTATE [42S01] : 기본 테이블 또는 뷰 이미 존재를 : 데이터베이스 테이블을 삭제해야 다음 PHP 장인 마이그레이션

 

(2) 데이터베이스 마이그레이션 성공을 만들

 

추천

출처www.cnblogs.com/hiit/p/11093378.html