Database

Field ‘...’ doesn’t have a default value 오류 해결 방안

쿠카이든 2023. 8. 31. 18:33
728x90

Field ‘...’ doesn’t have a default value 오류

  • 어느날 잘되던 API를 체크해보았는데 빌드는 되었지만 런타임 500 오류가 발생하였다.
  • 오류 메시지를 보니 Field '…' doesn't have a default value 라는 메시지를 찾을 수 있었다.
    • 소스코드를 점검해보니 이상이 없었고, 검색해보니 열(컬럼)에 기본값이 따로 지정되지 않았는데 그 열의 값을 뚜렷하게 지정하지 않는 채로 INSERT나 UPDATE 등으로 자료를 넣으면 오류가 발생할 수 있다고 한다.
    • 위 경우는 해당 테이블의 PK에 auto increment 속성이 해제되어 있었고 이를 추가하여 해결할 수 있었다.

 

-- auto increment
alter table aaa
    modify bbb bigint auto_increment;

  • PK에 자동증가 설정 추가 후, API 가 정상동작하였고 해당 테이블에 저장을 하였을 때, 무사히 오류가 발생하지 않았다.

 

참고 : https://velog.io/@claraqn/MySQL-Field-%EC%B9%BC%EB%9F%BC-doesnt-have-a-default-value-%EC%97%90%EB%9F%AC-0z6yo9y0

 

[MySQL] Field '칼럼' doesn't have a default value 에러

해당 블로그를 확인해본 결과,해당 테이블에 INSERT, UPDATE중 해당 컬럼의 값이 들어가지 않기 때문에 발생한 에러블로그 저자는 컬럼 속성을 NOT NULL에서 NULL로 변경함으로써 문제 해결하지만 본인

velog.io

 

728x90