본문 바로가기
개발 이야기/개발자 이야기

MSSQL DB 테이블 컬럼 추가 삭제 변경

by 런던살자 2020. 11. 28.

안녕하세요 마블랑입니다.

 

이번 포스팅은 MSSQL 등 데이터 베이스를 사용할때 설계때 미처 생각지도 못한 컬럼을 추가해야할때 사용할수 있는 테이블에 컬럼을 추가하는 방법에 대해서 알아보겠습니다.

 

 

테스트는 MSSQL을 통해서 진행을 하였는데 오라클이나 Mysql 등 다른 데이터베이스도 가능한지는 모르겠습니다~

 

1. 테이블 컬럼 추가

 

이미 생성되어있는 테이블에서 컬럼을 추가하거나 변경할때는 ALTER 명령어를 사용합니다.

 

먼저 구문을 보고 설명하는게 좋겠군요

 

ALTER TABLE [테이블명] ADD [추가할 컬럼명] [추가할 컬럼 타입] 

 

위 ALTER 구문에 테이블명이나 컬럼명, 컬럼타입을 알맞게 넣으시고 실행시켜주면 되는데요

 

KEY나 NOT NULL 등 컬럼의 속성도 지정할수 있습니다.

 

NOT NULL 같은 경우에는 기본값이 필요하기 때문에 DEFAILT 값도 함께 지정해야합니다.

 

간단하게 NOT NULL 만 추가된 구문을 보겠습니다.

 

ALTER TABLE STUDENT ADD GRADE INT NOT NULL DEFAULT 1 

 

이런식으로 구문을 만들어 실행해주시면 됩니다.

 

NOT NULL을 추가하지 않으면 기본값이 NULL을 허용하는 것이니 생략해도 컬럼을 추가할수 있습니다.

 

 

추가로 테이블에 사용하지 않는 컬럼을 제거 하는 방법도 알아보겠습니다.

 

2. 테이블 컬럼 삭제

 

테이블에서 컬럼을 삭제하는 방법도 컬럼 추가와 크게 다르지 않는데요

 

ADD 대신에 DROP을 사용해주면 됩니다

 

REMOVE나 DELETE 인줄 알았았는데 DROP을 사용하는군요

 

아직 포스팅 한적은 없지만 테이블을 삭제할때도 DROP을 사용했던것으로 기억납니다.

 

ALTER TABLE [테이블명] DROP COLUMN [제거할 컬럼명]

 

 

3. 테이블 컬럼명 변경

 

데이터베이스 UI 툴이 있다면 이미 구현해 놓은 데이터베이스와 관련된 것들을 굉장히 수정하기 쉬운것이지만 UI툴이 없더라도 충분히 데이터베이스 사항을 수정할수 있습니다.

 

위에 컬럼추가와 삭제도 마찬가지지만 테이블의 컬럼명도 변경할수 있습니다.

 

 

EXEC sp_rename '[테이블명] .[기존 컬럼명]', '[변경할 컬럼명]', 'COLUMN';

 

컬럼명을 변경할때는 ALTER 명령어를 쓰지 않고 프로시저로 만들어져 있는것을 실행시키는거 같기도 한데요

 

제일 뒤에 'COLUMN' 을 꼭 추가해서 컬렴명을 변경한다는것을 꼭 명시해야합니다.

 

테이블을 변경할때도 sp_rename이라는 프로시저를 사용하니까요

 

 

 

이렇게 테이블 내에 컬럼에 대한 추가, 삭제, 변경하는 방법에 대해서 알아보았는데요

 

기본적인것만 해서 그런지 많이 어렵지 않습니다.

 

다음번에는 테이블에 관한 추가, 삭제, 변경에 관한 포스팅을 해보는게 어떨까 싶군요

 

 

2019/01/05 - [개발 이야기/개발자 이야기] - [데이터베이스] SQL Query문 간단 정리 (SELECT, INSERT, UPDATE, DELETE 쿼리문 사용법)

 

[데이터베이스] SQL Query문 간단 정리 (SELECT, INSERT, UPDATE, DELETE 쿼리문 사용법)

안녕하세요 마블랑입니다. 가끔 데이터베이스와 연동하는 프로그램을 구현해야할때가 있습니다. 어렵지 않은 쿼리문인데도 헷갈리기 때문에 포스팅을 통해서 정리를 해두려고 합니다~ 데이터

sosobaba.tistory.com

 

이상 마블랑이었습니다.

 

읽어주어서 고맙습니다.

댓글