본문 바로가기
Study/기타

[mysql] 컬럼 순서 변경, 컬럼 설정 변경

by 나아가는 2023. 11. 30.
반응형

 

메타 데이터 컬럼( created_at, modified_at )을 설정 할 때 자주 사용하는 쿼리를 정리해 보았다.

1. 컬럼 정렬

메타 데이터 컬럼이 순서상 맨 마지막 컬럼에 있지 않아서 신경쓰일 때 사용

alter table question  modify column created_at datetime after complete;

 

2. 컬럼 설정 변경

기존 테이블에 메타 데이터 컬럼을 추가하는 경우

ALTER TABLE book ADD COLUMN created_at datetime NOT NULL DEFAULT CURRENT_TIMESTAMP
ALTER TABLE book ADD COLUMN modified_at datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP

 

3. modify column ~ not null

 

null 데이터 입력 가능한 컬럼에서 not null 컬럼으로 변경할 때 기존 데이터에는 null 값이 있어서 변경이 되지 않는다. 

이때 해결 방법

-> null 값이 있는 row 에 데이터를 채워주고 변경을 해야한다.

UPDATE article SET created_at = CURRENT_TIMESTAMP WHERE created_at is NULL;
ALTER TABLE article MODIFY COLUMN created_at datetime NOT NULL DEFAULT CURRENT_TIMESTAMP;

 

1) null 값 처리 전

 

2) null 값 처리 후

반응형