ORA-01735: 부적합한 ALTER TABLE 옵션입니다 해결하기 (ORA-01735: invalid alter table option)

ORA-01735: 부적합한 ALTER TABLE 옵션입니다 (ORA-01735: invalid alter table option)

해당 오류는 ALTER TABLE 명령 구문을 누락하여 발생합니다.

ALTER TABLE 구문은 크게 상기 그림과 같이 있으나, 자주 사용하는 명령어를 누락하는 예시를 간단히 소개해 드리겠습니다.

  • alter_table_properties
  • column_clauses
  • constraint_clauses
  • alter_table_partitioning
  • alter_external_table
  • move_table_clause
  • modify_opaque_type
  • enable_disable_clause

ORA-01735: 부적합한 ALTER TABLE 옵션입니다

ALTER TABLE 컬럼 관련 예시

알터 테이블 명령어 중에 컬럼과 관계가 있는 예제 자료를 모아보았습니다.

컬럼 추가하기

ALTER TABLE table_name ADD column_name VARCHAR2(1);

컬럼 수정하기

ALTER TABLE table_name MODIFY column_name VARCHAR2(2);

컬럼 드롭하기

ALTER TABLE table_name DROP COLUMN column_name;

컬럼 이름 바꾸기

ALTER TABLE table_name RENAME COLUMN old_column_name TO new_column_name;

컬럼 미사용으로 설정하기

ALTER TABLE table_name SET UNUSED COLUMN column_name;

미사용 컬럼 드롭하기

ALTER TABLE table_name DROP UNUSED COLUMNS;

ALTER TABLE 테이블 관련 예시

알터 테이블 명령어에서 테이블을 수정하는 명령어 모음입니다.

테이블 이름 바꾸기

ALTER TABLE old_table_name RENAME TO new_table_name;

테이블 병렬 프로세싱

ALTER TABLE table_name PARALLEL;

테이블 병렬 프로세싱 제약

ALTER TABLE table_name NOPARALLEL;

ALTER TABLE 기본키 관련 예시

기본키에 대한 추가, 수정, 삭제 관련 명령어입니다.

기본키 추가하기

(실제로는 이렇게 바로 추가하시는 것보다는 인덱스 생성단계부터 진행하는 게 낫습니다)

ALTER TABLE table_name ADD PRIMARY KEY (column_name);

기본키 드롭하기

ALTER TABLE table_name DROP PRIMARY KEY CASCADE;
ALTER TABLE table_name DROP PRIMARY KEY;

기본키 비활성화 하기

ALTER TABLE table_name MODIFY PRIMARY KEY DISABLE CASCADE;
ALTER TABLE table_name MODIFY PRIMARY KEY DISABLE;

기본키 활성화 하기

ALTER TABLE table_name MODIFY PRIMARY KEY ENABLE;

ALTER TABLE 제약조건 예시 (체크)

제약조건의 추가, 삭제, 및 활성화와 비활성화에 대해 다루어 보겠습니다.

제약조건 비활성 상태로 추가하기

(예시는 체크 제약조건입니다.)

ALTER TABLE table_name ADD CONSTRAINT check_name CHECK (column_name <> '1') DISABLE;

제약조건 드롭하기

ALTER TABLE table_name DROP CONSTRAINT check_name CASCADE;
ALTER TABLE table_name DROP CONSTRAINT check_name;

제약조건 활성화 하기

ALTER TABLE table_name ENABLE CONSTRAINT check_name;

제약조건 비활성화 하기

ALTER TABLE table_name DISABLE CONSTRAINT check_name;

ALTER TABLE 트리거

테이블의 트리거를 수정하는 명령어입니다.

해당 테이블 모든 트리거 활성화 하기

ALTER TABLE table_name ENABLE ALL TRIGGERS;

해당 테이블 모든 트리거 비활성화 하기

ALTER TABLE table_name DISABLE ALL TRIGGERS;

댓글