php8 Method Illuminate\Database\Schema\Blueprint::varchar does not exist & int does not exist 오류
make:migration create_테이블명_table
로 마이그레이션 파일을 만든 뒤
테이블 컬럼을 작성 하고
migrate를 했더니
Method Illuminate\Database\Schema\Blueprint::varchar does not exist.
라는 오류를 만났다.
varchar 스펠링 틀린게 없는데
대체 뭐가 문제일까 싶었는데
migrate로 테이블을 생성할때는
문자열을 varchar가 아닌 string으로 입력해주어야 한다.
ex) $table->varchar('테이블명', 10); -> 오류
$table->string('테이블명', 10) -> 정상작동
이 문제를 해결했더니 이번엔
Method Illuminate\Database\Schema\Blueprint::int does not exist.
라는 오류가 떴다.
마찬가지로
migrate로 테이블을 생성할때는
문자열을 int가 아닌 integer로 입력해주어야 한다.
ex) $table->int('컬럼명'); -> 오류발생
$table->integer('컬럼명') -> 정상작동
interger 컬럼을 생성할때
컬럼명 인수 뒤에 추가 인수를 넣으면
SQLSTATE[42000]: Syntax error or access violation: 1075 Incorrect table definition
라는 오류를 또 만날 수 있게 됨.
integer에 크기를 부여하고 싶다면
length 함수를 이용하자.
ex)$table->integer('컬럼명', 10) -> 오류 발생
$table->integer('컬럼명')->->length(10); -> 정상작동
댓글