[mysql] NULL을 허용하도록 MySQL 열을 어떻게 수정합니까?

MySQL 5.0.45

열이 null이되도록 테이블을 변경하는 구문은 무엇입니까?

ALTER mytable MODIFY mycolumn varchar(255) null;

위의 명령을 실행하는 것으로 매뉴얼을 해석했으며 이번에는 null을 허용하여 열을 다시 작성합니다. 서버에서 구문 오류가 있다고 알려줍니다. 나는 단지 그들을 보지 못한다.



답변

다음을 원합니다 :

ALTER TABLE mytable MODIFY mycolumn VARCHAR(255);

기본적으로 열은 널 입력 가능합니다. 열이 선언되지 않은 한 UNIQUE또는 NOT NULL문제가 없어야합니다.


답변

쿼리에서 “테이블”이 누락되어 구문 오류가 발생했습니다.

ALTER TABLE mytable MODIFY mycolumn varchar(255) null;


답변

내 해결책 :

ALTER TABLE table_name CHANGE column_name column_name type DEFAULT NULL

예를 들면 다음과 같습니다.

ALTER TABLE SCHEDULE CHANGE date date DATETIME DEFAULT NULL;


답변

경우에 따라 ( “오류 1064 (42000) : SQL 구문에 오류가 있습니다; …”)

ALTER TABLE mytable MODIFY mytable.mycolumn varchar(255);


답변

내 솔루션은 @Krishnrohit과 같습니다.

ALTER TABLE `table` CHANGE `column_current_name` `new_column_name` DATETIME NULL;

실제로 열을 설정 NOT NULL했지만 위의 쿼리에서는로 변경되었습니다 NULL.

추신 : 나는 이것이 오래된 실을 알고 있지만 아무도 그 사실을 인정하지 않는 것 같습니다 CHANGE.


답변

사용하다:
ALTER TABLE mytable MODIFY mycolumn VARCHAR(255);


답변