Day37 - DDL (테이블 생성, 테이블 변경, 테이블 삭제)

2021. 4. 7. 18:27Oracle 공부

이번에는 DDL에 대해서 알아 봅시다.

 

DDL ( Data Definition Language )

테이블과 같은 데이터 구조를 정의하는데 사용하는 명령어

TCL 을 적용할 수 없다. ( COMMIT , ROLLBACK )

 

CREATE TABLE

CREATE TABLE 는 테이블을 생성할 때 사용합니다.

 

ALTER TABLE

ALTER TABLE 은 만들어진 테이블을 변경할 때 사용합니다.

 

열 추가 -> ALTER TABLE 테이블명 ADD (속성명 유형(길이))

열 이름변경 -> ALTER TABLE 테이블명 RENAME COLUMN 테이블명 TO 변경할 테이블명

열 수정 -> ALTER TABLE 테이블명 MODIFY (속성명 변경할유형(길이))

길이를 늘리는건 항상 가능하지만, 길이를 줄일 때는, 데이터 중에 줄이려는 길이보다 긴 데이터가 있을 경우. 불가능

 

열 삭제 -> ALTER TABLE 테이블명 DROP COLUMN 속성명

 

DROP TABLE

DROP TABLE 은 만들어진 테이블을 삭제할 때 사용합니다.

DROP TABLE 테이블명 CASCADE CONSTRAINTS 제약조건명

다른 테이블에서 PK를 FK로 참조하고 있을 경우. FK를 참조하는 테이블까지 같이 삭제 해버림

 

TRUNCATE TABLE

테이블 구조는 남겨두고 데이터 영구삭제 할 때 사용합니다.

DROP TABLE 을 사용할 경우, 데이터만 삭제되고, 공간은 유지가 되는데, TRUNCATE TABLE 은 공간을 없애 버립니다.

 

 

 

※ 실무에서는 DROP TABLE, TRUNCATE TABLE은 복구가 불가능하니 함부로 사용하면 큰일난다고 합니다. ( 주의 )

 

TRUNCATE TABLE 대신에 DELETE FROM 테이블명 을 쓰면 복구가 가능합니다.

 

이렇게 DDL 에 대해서 알아 보았습니다.

 

고생하셨습니다.

'Oracle 공부' 카테고리의 다른 글

Day38 - view  (0) 2021.04.08
Day37 - 제약조건  (0) 2021.04.07
Day37 - TCL ( COMMIT, ROLLBACK, SAVEPOINT)  (0) 2021.04.07
Day37 - 테이블 병합.MERGE  (0) 2021.04.07
Day36 - 행수정.UPDATE , 행삭제.DELETE  (0) 2021.04.06