반응형
작은 부분이지만, 추후 오류를 발생시킬 수 있는 부분으로,
MariaDB의 경우 호환성 모드로 동작을 하는데 특정 조건에 맞지 않는 경우 자동으로 판단하여 데이터를 입력하게 된다.
(예, unsigned 컬럼에 -1 이 입력되면 자동으로 0 으로 변환)
이러한 이유가 발생하는 이유는 STRICT_ALL_TABLES, STRICT_TRANS_TABLES 가 꺼져있어서 발생하며, STRICT_ALL_TABLES, STRICT_TRANS_TABLES이 비활성화 되어 있으면 CHAR, VARCHAR 의 크기를 초과하는 데이터 입력시 에러를 발생하지 않고 가능한 크기 만큼 잘라서 넣게 된다.
이는 운영상 위험이 있을 수 있기 때문에 아래와 같이 STRICT_ALL_TABLES, STRICT_TRANS_TABLES 설정을 추가하도록 하자.
'OPTIONS': {
'init_command' : "SET sql_mode='STRICT_TRANS_TABLES'",
}
참고 자료
https://dev.mysql.com/doc/refman/8.0/en/server-options.html#option_mysqld_sql-mode
반응형
'Etc' 카테고리의 다른 글
Mac - 오른쪽 왼쪽 화면 코너 이용하기 <핫코너> (0) | 2022.10.12 |
---|---|
LTS(Long Term Support) - 버전 관리의 필요성 (0) | 2022.09.07 |
Docker - failed to compute cache key: "/. " not found: not found (0) | 2022.09.01 |
Mac - VSCode M1 한글 씹힘, 입력 문제 해결 (0) | 2022.08.08 |
Azure 코드 배포 Bicap (0) | 2022.08.03 |