본문 바로가기
DEV의 흔적/00_MS-SQL

MS-SQL 컬럼 추가/변경/삭제 하기

by MVP_CYOUS 2022. 2. 6.

업무하면서 DB와 관련해서 은근히 많이 접하게 되는 경우가 있는데 바로

기존 테이블에 컬럼을 추가하거나 기존컬럼의 여러 설정을 변경하는 것이다. (예:기존컬럼값의 타입 변경등..)

과거 개발 설계 단계에서 예상치 못했던 정보의 추가나,

새로운 요구사항을 받아 개발할 때에 기존DB테이블에 욱여 넣으면 아무래도 개발이 쉬워질 때 ㅠ_ㅠ 애용하고 있다.

 

여하튼,  ALTER를 활용하여 기존 테이블의 컬럼과 관련된 것을 수정할 수 있다.

 


01. 컬럼 추가

- 형태         :

ALTER TABLE ${TABLE_NAME} ADD ${COLUMN_NAME} ${COLUMN_TYPE} [NULL or NOT NULL];

- 예제_01   :

ALTER TABLE HOMEPAGE_SUPPORT_HISTORY ADD SUPPORT_NAME2 VARCHAR2(50) NULL; -- NULL 허용 시

- 예제_02   : 

ALTER TABLE HOMEPAGE_SUPPORT_HISTORY ADD SUPPORT_NAME2 VARCHAR2(50) NOT NULL; -- NULL 비허용 시

- 예제_03   : 

ALTER TABLE HOMEPAGE_SUPPORT_HISTORY ADD SUPPORT_NAME2 VARCHAR2(50) NOT NULL DEFAULT '상품명2'; -- NULL 비허용 / 기본값 설정 시

 

 

02. 컬럼 속성 변경

- 형태         :

ALTER TABLE ${TABLE_NAME} ALTER COLUMN ${COLUMN_NAME} ${COLUMN_TYPE} [NULL or NOT NULL];

- 예제_01   :

ALTER TABLE HOMEPAGE_SUPPORT_HISTORY ALTER COLUMN SUPPORT_NAME2 VARCHAR2(100) NULL; --SUPPORT_NAME2의 속성을 변경(크기변경)/ NULL허용하도록

 

 

03. 컬럼 이름 변경

- 형태         :

EXEC SP_RENAME '${TABLE_NAME}.[${COLUMN_NAME_OLD}]', '${COLUMN_NAME_NEW}', 'COLUMN';

- 예제_01   : 컬럼이름 변경은 사용하기 보다는 처음부터 잘 정해서 쓰는게 여러모로 편리하긴 하다 ㅡ_ㅡ;;;

EXEC SP_RENAME 'HOMEPAGE_SUPPORT_HISTORY.[SUPPORT_NAME2]', 'SUPPORT_NAME_2', 'COLUMN'; --SUPPORT_NAME2의 이름을 SUPPORT_NAME_2로 변경

 

 

04. 컬럼 삭제 

- 형태         : 

ALTER TABLE ${TABBLE_NAME} DROP COLUMN ${COLUMN_NAME};

- 예제_01   : 컬럼을 삭제하는 경우는 사실 경험이 부족하여 많지는 않았다. 이미 데이터가 들어가 있는 경우도 있으므로 더욱 그러했다.

ALTER TABLE HOMEPAGE_SUPPORT_HISTORY DROP COLUMN SUPPORT_NAME2; --SUPPORT_NAME2 컬럼 삭제

댓글