반응형
DB INSERT 시 컬럼이 NOT NULL 여부에 관계없이
실수나 정수형에 데이타에 ''(빈문자열)을 입력하면 발생하는 오류다.
sql_mode가 STRICT mode이면 ERROR을 아니면 WARNING을 표시해준다.
그런데 persistent connection도 문제의 원인이 될 수 있나 보다.
정확한 쿼리 사용이 되면 좋겠지만, 현실은 그렇지 않다.
유지보수 및 추가개발 등으로 남의 코드를 보다 보면, 빈번히 볼 수 있을 것이다.
겪은 상황을 요약한다.
서버 - CENT OS
언어 - PHP
DB - MARIADB
버전은 생략한다.
DB 프로시저를 호출, 프로시저 내부에서 INSERT문 수행
쿼리순서
prepared statement사용 CALL procedure
SET @param을 수행
EXECUTE statement USING @param
3번째 EXECUTE에서 db 오류 발생
sql_mode를 default로 두고, pconnect를 사용하지 않으니, 쿼리가 수행되었다.
임시방편은 이러하고, 전면 수정은 고려해봐야겠다.
반응형
'dev > web' 카테고리의 다른 글
웹 기술 동향 - 개인적인 로그 (0) | 2017.03.02 |
---|---|
camel case vs snake(underscore) case (0) | 2016.01.23 |
[JS] 이미지 리사이즈 스크립트 (1) | 2014.07.13 |
ajax 호출시 응답 데이터타잎에 대해.. (0) | 2014.07.05 |
inline-block 여백 버그 (1) | 2014.06.25 |