테스트 사이트 - 개발 중인 베타 버전입니다

mysql 5.7 일때 필드 추가 실행오류 일때

· 7년 전 · 6930 · 5

그누보드 및 영카트 웹호스팅시   mysql 5.7 이상 일때 

필드 추가시 에러가 납니다. 

 

datetime '0000-00-00 00:00:00' 을  인식해서  실행시 에러가 발생합니다. 

 

 필드추가해야 하는데 mysql 버젼을  변경까지 생각할 정도 였으니 

 

여기저기 검색을 해보았지만 뚜렷하게 나온 답이 없어서 

혹여나  나같이 헤메이고  있는 회원을 있을것 같아  첫글을 올려봅니다.

 

 

 

필드추가및수정시  쿼리 작성한후 

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 
SET time_zone = "+00:00"; 

원하는 테이블 생성 수정및추가 궈리 작성하시면 될듯합니다. 

ALTER TABLE add  필드  형식 ~~~~~

 

SQL_MODE 미작성시 에러 코드

'ct_time'의 유효하지 못한 디폴트 값을 사용하셨습니다.

 

 

 

ex )

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 
SET time_zone = "+00:00"; 

-- 카트에  mk_benefit_rate 뒤에 부가세 필드 추가 지정    
ALTER TABLE `g5_shop_cart` ADD `ct_tax` INT(11) NOT NULL DEFAULT '0' COMMENT '부가세' AFTER `mk_benefit_rate`;

 

 

 

 

 

 

 

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 5개

7년 전
mysql 5.6 이후로 mysql 문법이 엄격해졌습니다. 5.5 버전에선 이런 옵션들이 false 였지만, 5.6 에선 default 가 true 입니다. 물론 my.cnf 에서 변경할수 있습니다.

가급적 엄격한 문법에 적응하는게 좋습니다. php 도 마찬가지구요.
7년 전
자세한 설명까지ㅠㅠ 유용한 정보를 알려주셔서 감사합니다^^
한참 헤메다 덕분에 해결했습니다.
감사합니다.
5년 전
감사합니다.
5년 전
멤버보드 필드 변경하려고 하다 같은 문제로 돌아버리는줄 알았는데 답변 감사드립니다.

게시글 목록

번호 제목
22041
22035
22033
22028
22019
22006
22005
21995
21989
21978
21972
21961
21956
21944
21934
21932
21924
21922
21921
21910
21908
21897
21883
21881
21875
21854
21852
21851
21829
21817