데이터 테이블을 생성하기 위해 이주 명령을 실행 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) 데이터베이스 마이그레이션 성공을 만들