DB관련 질문 드립니다!
본문
http://gnustudy.com/bbs/board.php?bo_table=gnu_tip&wr_id=24
이곳을 보고 현재 하고 있는데
DB쪽 수정을 하는 도중 TEXT -> LONG TEXT 로 수정 버튼을 누르는 순간
wr_datetime의 유효하지 못한 디폴트 값을 사용하셨습니다.값이 나와서 기본값을 current time으로 바꾸니
as_update 가 잘못됐다길래 가서 기본값에 current time으로 바꾸니 이번엔 또 wr_datetime의 유효하지 못한 디폴트 값을 사용하셨다고 나오는데 이거 왜이런가요 미치겠네요 ㄷㄷ
이거 어떻게 해야되나요...ㅠㅠ
텍스트 좀 수정하는것도 이렇게 힘드니...
답변 3
mysql 에서
ALTER TABLE `g5_write_qa` CHANGE `wr_datetime` `wr_datetime` DATETIME NOT NULL;
식으로 쿼리를 실행해서 해당 기본값을 없애시면 될것같습니다.
음 죄송합니다. 스크립을 다시 적겠습니다.
ALTER TABLE `g5_write_qa` CHANGE `wr_datetime` `wr_datetime` DATETIME NOT NULL;
alter table g5_write_qa change wr_datetime wr_datetime datetime not null;
이렇게 "`" 표시를 다 없앤 다음에 해보세요
즉
alter table g5_write_ari1 CHANGE wr_datetime wr_datetime DATETIME NOT NULL ;
로 작성하시면 됩니다.
이 의미는 g5_write_ari1 테이블에 있는 wr_datetime를 "wr_datetime DATETIME NOT NULL" 로 다시 설정해주는 것입니다.
존재감님이 2번째 위치에 wr_datetime 로 적으셔야 될 곳을 ar_update로 적으면서 오류가 생겼습니다.
mysql 5.6 버전 이상을 사용하는 경우에 발생하는 문제입니다.(디폴트값 설정되어 있지 않으면, 값을 명시적으로 입력을 해야 합니다. 엄격하게 입력하도록 설정되어 있습니다.)
set sql_mode='' 을 실행하신후 변경하시면 됩니다. 그누보드 코드에도 위와 관련된 코드가 포함되어 있습니다.