DataBase/Oracle SQL

[SQL] 제약조건 삭제

햄볶는뚱땡이 2010. 8. 24. 16:23

컬럼 및 제약 조건 삭제

설명

ALTER 구문의 DROP 예약어를 사용하여 컬럼이나 제약 조건을 삭제할 수 있다. 한 번의 ALTER 구문으로 삭제할 수 있는 컬럼이나 제약 조건의 개수 제한은 없다.

구문

ALTER [ table_type ] table_name
DROP [ ATTRIBUTE | COLUMN ] [ CLASS ] attr_mthd_name 
[ {, [ CLASS ] attr_mthd_name }_ ]
[ INHERIT resolution [ {, resolution }_ ] ] [ ; ]

ALTER [ table_type ] table_name
DROP CONSTRAINT constraint_name

table_type:
[TABLE | CLASS]
[VIEW | VCLASS]

resolution:
[ CLASS ] attr_mthd_name OF superclass_name [ AS alias ]

  • table_type : 변경할 테이블의 종류를 일반 테이블과 가상 테이블 중 하나를 지정한다.
  • table_name : 삭제할 컬럼이 존재하는 테이블의 이름을 명시한다.
  • attr_mthd_name : 삭제할 컬럼의 이름을 명시한다.
  • constraint_name : 삭제할 제약 조건의 이름을 명시한다.
예제
  • 예제 1
  • 다음은 stadium 테이블의 address 컬럼과 seats 컬럼을 삭제하는 예제이다.

ALTER TABLE stadium DROP ATTRIBUTE address, seats;

  • 예제 2
  • 다음은 stadium 테이블의 code 컬럼에 설정되어 있는 PRIMARY KEY 제약 조건을 삭제하는 예제이다.

ALTER TABLE stadium DROP CONSTRAINT pk_stadium_code;


출처 : http://www.cubrid.com/online_manual/cubrid_813/syntax/syntax_table_mod_coldel.htm