본문 바로가기

Backend/DB

db의 유효성 검사기준을 확인하자 - sql_mode

dev에서는 잘 되는 작업이 live 서버에서 db 에러를 뱉는 경우가 생겼다.

이는 디비에 저장되는 데이터에 대한 유효성 검사(validation check) 범위의 문제였는데,

dev와 live의 검사범위가 달라서 발생하는 문제였다. 

 

live 서버의 유효성 검사 기준이 훨씬 까다로웠기 때문에 dev 서버의 테스트는 모두 통과했으나 live 서버에서 오류를 발생시킨 것이다.

dev에서 미리 문제를 발견해야 정상이지만 이 경우, 역설적이게도 live에서 오류를 발견하게 되는 셈이다.

 

db 데이터의 유효성 검사는

 

SELECT @@sql_mode;

 

쿼리문으로 확인 할 수 있으며, sql 공식 문서에서 각 조건의 유효성 검증 기준과 설명이 나와있으니 참고하자.

 

 

'Backend > DB' 카테고리의 다른 글

null은 언제 허용해야 하는가?  (0) 2021.07.20
mysql - like문  (0) 2021.07.13
why ORM?  (0) 2021.07.05
Json in DB  (0) 2020.12.07