묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
Field 'email_address' doesn't have a default value
2012.05.30 13:41
비 회원 글쓰기 하면
제목,내용,이름,비번 입력하고 등록을 누르면
Field 'email_address' doesn't have a default value
이렇게 에러가 발생합니다
환경 : xe_v3_default (1.4.4)
검색해서 해결 했습니다
MySQL 4.x 에서는 이런문제가 발생하지 않는데 MySQL 5.x 에서는 이런문제가 발생합니다.
보통 phpMyAdmin 이런것으로 DB 를 관리하실텐데요.
필드를 만들때 not null 로 설정시 default 값에 아무것도 입력하지 않을경우 자동으로 '' 이렇게 셋팅이 안됩니다.
그래서 insert 쿼리 할때 default 값이 없는 필드를 그냥 무시하고 넘길때 아래처럼 에러가 발생하는겁니다.
Field 'name' doesn't have a default value
뭐 정확하게 필드마다 값을 지정해주는것도 좋겠지만 특별히 지정 안해줘도 되는 부분에 '' 이걸 다 셋팅해주긴 귀찮고 not null 을 null 로 하긴 싫고.....
my.ini 셋팅값을 변경하면 문제는 해결됩니다. 아래의 부분을 # 으로 주석처리해주세요
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
그러면 문제해결됩니다.