오라클 ddl 예제

CREATE, ALTER 및 DROP 명령은 지정된 개체에 대한 단독 액세스가 필요합니다. 예를 들어 다른 사용자가 지정된 테이블에 열린 트랜잭션이 있는 경우 ALTER TABLE 문이 실패합니다. 제약 조건은 데이터 무결성을 보장하기 위해 Oracle 테이블에 정의된 규칙 집합입니다. 이러한 규칙은 각 열 또는 열 집합에 대해 적용됩니다. 테이블이 데이터 작업에 참여할 때마다 이러한 규칙의 유효성이 검사되고 위반 시 예외가 발생합니다. 사용 가능한 제약 조건 유형은 NULL, 기본 키, 고유, 검사 및 외래 키가 아닙니다. 데이터 유형을 변경하려면 모든 Oracle 버전에서 열이 비어 있어야 합니다. 참고: Oracle은 열 값의 중복을 방지하기 위해 고유한 인덱스를 내부적으로 만듭니다. 인덱스는 PL/SQL에서 나중에 설명합니다. 주 키 열이 아닌 열 값에 대해 고유성을 적용해야 하는 경우가 있습니다. 고유 제약 조건을 사용하여 이 규칙을 적용할 수 있으며 Oracle은 고유한 제약 조건을 위반하는 행을 거부합니다. 고유한 제약 조건은 중복없이 열 값이 구별되도록 합니다.

포함된 SQL 문은 절차 언어 프로그램 내에 DDL, DML 및 트랜잭션 제어 문을 배치합니다. 임베디드 SQL은 오라클 프리컴파일러에서 지원되며 다음 책에 설명되어 있습니다: 참고: Oracle DDL 명령문은 암시적으로 미해결 트랜잭션을 커밋합니다. 하위 테이블의 열에 외래 키가 정의된 경우 Oracle은 하위 행이 포함된 경우 부모 행을 삭제할 수 없습니다. 그러나 ON DELETE CASCADE 옵션이 외래 키를 정의할 때 제공되는 경우 Oracle은 부모 행이 삭제되는 동안 모든 자식 행을 삭제합니다. 마찬가지로 ON DELETE SET NULL은 상위 테이블의 행이 삭제될 때 외래 키 값이 null로 설정됨을 나타냅니다. 2015년 11월 20일 도널드 벌레슨의 오라클 데이터베이스 팁 오라클은 이전 객체에 대한 무결성 제약 조건, 인덱스 및 부여를 새 개체로 자동으로 전송합니다. Oracle을 사용하면 단일 열에 두 개 이상의 CHECK 제약 조건이 있습니다. 실제로 열에 대해 정의할 수 있는 CHECK 제약 조건의 수에는 실질적인 제한이 없습니다. 열의 데이터 형식 및 너비를 수정합니다.

예를 들어 열 에남의 길이를 varchar2(20)에서 varchar2(30)로 늘린 다음 다음 명령을 지정합니다. 많은 DDL 명령문으로 인해 Oracle Database에서 스키마 개체를 다시 컴파일하거나 다시 인증할 수 있습니다. Oracle Database가 스키마 개체를 다시 컴파일하고 재인증하는 방법과 DDL 문이 이를 야기하는 상황에 대한 자세한 내용은 Oracle 데이터베이스 개념을 참조하십시오. 많은 DDL 명령문은 Oracle이 스키마 개체를 다시 컴파일하거나 다시 인증하도록 할 수 있습니다. ON COMMIT DELETE 행은 임시 테이블이 트랜잭션에 따라 다르도록 지정하고 Oracle은 각 커밋 후 테이블을 트렁킨다(모든 행 삭제)합니다. Oracle Ver. 8i에서 열을 직접 삭제할 수 있습니다.