DROP TABLE 명령: 하이브리드 테이블을 위한 CASCADE 동작 변경(보류 중)

주의

이 동작 변경은 2025_03 번들에 포함되어 있습니다.

번들의 현재 상태는 번들 기록 섹션을 참조하십시오.

이 동작 변경 번들을 활성화하면 CASCADE/RESTRICT 매개 변수의 기본 설정이 하이브리드 테이블 에 대해 달라집니다. 이 변경 사항은 표준 테이블에는 적용되지 않습니다.

변경 전:

RESTRICT 또는 CASCADE 를 지정하지 않고 하이브리드 테이블을 삭제하고 하이브리드 테이블이 다른 테이블과 기본 키/외래 키 또는 고유 키/외래 키 관계를 갖는 경우 DROP TABLE 명령이 성공합니다.

기본 동작은 CASCADE 입니다.

CREATE OR REPLACE HYBRID TABLE ht1(
  col1 NUMBER(38,0) NOT NULL,
  col2 NUMBER(38,0) NOT NULL,
  CONSTRAINT pkey_ht1 PRIMARY KEY (col1, col2));

CREATE OR REPLACE HYBRID TABLE ht2(
  cola NUMBER(38,0) NOT NULL,
  colb NUMBER(38,0) NOT NULL,
  colc NUMBER(38,0) NOT NULL,
  CONSTRAINT pkey_ht2 PRIMARY KEY (cola),
  CONSTRAINT fkey_ht1 FOREIGN KEY (colb, colc) REFERENCES ht1(col1,col2));

DROP TABLE ht1;
Copy

DROP TABLE 명령은 오류 없이 성공합니다.

변경 후:

RESTRICT 또는 CASCADE 옵션을 지정하지 않고 하이브리드 테이블을 삭제하고 하이브리드 테이블이 다른 테이블과 기본 키/외래 키 또는 고유 키/외래 키 관계를 갖는 경우 DROP TABLE 명령이 오류와 함께 실패합니다.

기본 동작은 RESTRICT 입니다.

예:

DROP TABLE ht1;
Copy
SQL compilation error:
Cannot drop the table because of dependencies

이 경우 DROP TABLE 명령은 실패합니다. 필요한 경우 DROP TABLE 명령에 CASCADE 를 지정하여 기본 동작을 재정의할 수 있습니다.

DROP TABLE ht1 CASCADE;
Copy

또는 이 경우 종속성 테이블 ht2 를 먼저 삭제한 다음 테이블 ht1 을 삭제할 수 있습니다.

Ref: 1741