9. 엔터티 정의 수정 쿼리문 ALTER를 이용한 테이블 정의 수정

ALTER문은 기존의 엔터티 정의를 수정할 때 사용합니다. 여기서는 테이블 정의를 수정하는 ALTER TABLE을 살펴볼게요. ALTER TABLE 문을 이용하면 테이블의 열과 제약 조건 등을 추가, 삭제, 변경 등을 할 수 있습니다. 이 책에서는 간단하게 기존 테이블에 새로운 열을 추가하고 삭제 및 변경하는 쿼리문을 살펴볼게요.

▷ 열 변경

포멧:

ALTER TABLE [ database_name . [ schema_name ] . | schema_name . ] table_name

{

ALTER COLUMN column_name

{

[ type_schema_name. ] type_name [ ( { precision [ , scale ] | max | xml_schema_collection } ) ]

[ COLLATE collation_name ] [ NULL | NOT NULL ] [ SPARSE ] |

{ADD | DROP } { ROWGUIDCOL | PERSISTED | NOT FOR REPLICATION | SPARSE }

}

}[ ; ]

예:

ALTER TABLE Custom ALTER COLUMN ADDR varchar(200)

위 예는 Custom 테이블의 ADDR 열의 형식을 변경하는 쿼리문입니다.

▷ 열 추가

포멧:

ALTER TABLE [ database_name . [ schema_name ] . | schema_name . ] table_name

{

ADD

{

<column_definition>|<computed_column_definition>|<table_constraint>|<column_set_definition>

}

}[ ; ]

예:

ALTER TABLE Custom ADD Desciption varchar(100)

위 예는 Custom 테이블에 Description 열을 추가하는 쿼리문입니다.

▷ 열 삭제

포멧:

ALTER TABLE [ database_name . [ schema_name ] . | schema_name . ] table_name

{

DROP

{

[ CONSTRAINT ]

{

constraint_name

[ WITH  ( <drop_clustered_constraint_option> [ ,…n ] ) ]

} [ ,…n ]

| COLUMN

{

column_name

} [ ,…n ]

} [ ,…n ]

}[;]

예:

ALTER TABLE Custom DROP COLUMN Desciption

위 예는 Custom 테이블의 Description 열을 삭제하는 쿼리문입니다.