• 카테고리

    질문 & 답변
  • 세부 분야

    데이터베이스

  • 해결 여부

    미해결

ㅠㅠ 이건 왜이러는걸가요? 똑같이 '0' 으로 넣었거든요

20.05.13 10:56 작성 조회수 408

0

저만 자꾸 오류나는 기분이네욥..

기본값 설정없음으로 수업 그냥 진행했어요~

답변 1

답변을 작성해보세요.

0

질문 주셔서 감사드립니다. 적지 않은 분들께서 DB클라이언트 도구를 처음 접하실 때 혼돈스러워 하시는 내용입니다. HeidiSQL 의 테이블 생성기능을 통해 테이블 생성시 흔히 발생하는 사용자 오류랍니다.

아마도 테이블 생성화면에서 age컬럼 기본값 부분에 단따옴표(')를 함께 입력하셨으리라 생각되고요, 이때 발생하는 로그를 보시면 아래와 같습니다. '\'0\'' <-부분 때문에 오류가 발생하게 됩니다.

ALTER TABLE `your_table`

ADD COLUMN `age` INT(11) NULL DEFAULT '\'0\'' AFTER `isnosql`;

/* SQL 오류 (1067): Invalid default value for 'age' */

단따옴표(')를 넣지 마시고 숫자 0 값만 입력하시면 아래와 같이 정상처리되는 것을 아래쪽 로그창을 통해 확인하실 수 있습니다.

ALTER TABLE `your_table`

ADD COLUMN `age` INT(11) NULL DEFAULT '0' AFTER `isnosql`;

HeidiSQL 테이블 수정화면에서 수정 후 "저장"버튼을 누르기 직전까지는 화면에 '0' 으로 표시되므로 충분히 혼동될 수 있는 부분입니다. 테이블 정상 생성 후 확인해보시면 기본값 부분에 숫자 0만 표시되는 것을 보실 수 있습니다. 이는 DB클라이언트 도구들마다 다소 다르게 표현되는 양식이므로 도구마다 신경쓸 수밖에 없는 부분입니다.

혹시 다른 문제라면 추가 질문 부탁드립니다.