mysql 5.7 에서 그누보드5 사용시 날짜형식에 기본값에 대해 질문드려요
본문
PHP7
MYSQL 5.7
아파치 2.4
조합으로 서버가 세팅되어 있습니다.
설치된 지난주에 올라온 그누보드는 5.2 최신버전이구요..
아파치 5.4쓸때는 없었던 에러메세지인데
5.7 로 바뀌고 나서는 에러메세지가 생깁니다.
회원정보 테이블 g5_member 에서 sql로 alter 로 칼럼 추가하려고 하면
질의 오류:
#1067 - Invalid default value for 'mb_today_login'
같은 에러메세지가 뜹니다.
날짜형식이 0000-00-00 같이 지정되어 있는 칼럼의 경우에
위의 메세지가 뜨는거 같은데...
뭐가 문제인지 모르겠네요..이런 경우 어떻게 처리하면 좋을지 몰라서
질문 글 올립니다.
답변 4
5.7.13에서 똑같이 g5_member 에 alter table add로 컬럼추가해봤는데 잘 되네요.
insert로 더미데이터 넣어봤는데 mb_today_login에 디폴트인 0000-00-00 00:00:00 잘 들어가 있구요.
테스트는 윈도 데스크탑에서 하긴 했습니다만 아주 다르진 않을듯 한데..
alter table로 컬럼추가 하는데 mb_today_login의 디폴트값이 문제가 된다는게 좀 이상하네요.
아직 5.7 서버에서 테스트가 가능하다면 혹시 모르니 처리하려는 sql을 출력해보세요. 왠지 mb_today_login를 변경하려는게 있었을수도 있겠네요.
SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'NO_ZERO_IN_DATE',''));
SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'NO_ZERO_DATE',''));
넣을때 sql 형식값을 확인 하시거나. 아니면 mysql5.7 에 맞게끔 변경하셔야 할겁니다
해결 방법 알려드립니다.
SQL_MODE에서 "NO_ZERO_IN_DATE,NO_ZERO_DATE" 값을 제거하시면 됩니다.
(5.7부터는 default로 들어가있어요)
답변을 작성하시기 전에 로그인 해주세요.