[오라클 / Oracle] DBMS / DDL / CREATE / ALTER / DROP / TRUNCATE / RENAME / MODIFY / ADD

seulki·2022년 9월 10일
0

[oracle]

목록 보기
4/28
post-thumbnail
post-custom-banner

✨데이터 정의어(DDL : Data Definition Language)

  • 데이터베이스 데이터를 보관하고 관리하기위해 제공되는
    여러 객체의 생성, 변경, 삭제 관련 기능을 수행
  • DDL을 실행하면 자동으로 COMMIT되기 때문에 이전에 사용한 DML은 영구히 데이터베이스에 반영
    -> 🗝️이는 ROLLBACK을 통한 실행 취소가 불가능하다는 것을 의미
  1. CREATE : 테이블 객체를 생성
  2. DROP : 테이블 삭제
  3. ALTER : 테이블 수정, 변경
  4. TRUNCATE : 테이블 내용 전체 삭제

👍CREATE

CREATE TABLE TBL_CAR(
	ID NUMBER,
	BRAND VARCHAR2(100),
	COLOR VARCHAR2(100),
	PRICE NUMBER,
	CONSTRAINT CAR_PK PRIMARY KEY(ID)
);
CREATE TABLE TBL_ANIMAL(
	ID NUMBER PRIMARY KEY, --제약조건의 이름을 설정하지 않고 PK 생성
	"TYPE" VARCHAR2(100), --TYPE은 명령어인데 "" 안에 넣으면
    문자열처럼 쓸수 있다.
	AGE NUMBER(3),
	FEED VARCHAR2(100)
);

이미 만들어진 형태의 테이블과 동일한 테이블 생성

CREATE TABLE employees3
AS
SELECT * FROM EMPLOYEES e ;


👍DROP 테이블삭제

DROP TABLE TBL_CAR ;


👍ALTER

  • 제약조건 삭제 DROP
ALTER TABLE TBL_CAR DROP CONSTRAINT CAR_PK;
  • 제약조건 추가 ADD
ALTER TABLE TBL_CAR ADD CONSTRAINT CAR_PK PRIMARY KEY(ID);
  • 컬럼 추가 ADD
ALTER TABLE EMPLOYEES2 ADD (
	manager_id varchar2(10)
);
  • 컬럼 자료형 길이 변경 MODIFY
ALTER TABLE EMPLOYEES2 MODIFY (
	manager_id varchar2(20)
);
  • 컬럼 삭제 DROP
ALTER TABLE EMPLOYEES2 DROP COLUMN manager_id;
  • 컬럼 명 변경 RENAME COLUMN TO
ALTER TABLE EMP_ALTER
	RENAME COLUMN HP TO TEL;
  • 테이블 이름 변경 RENAME TO
RENAME EMP_ALTER TO EMP_RENAME;
  • 이미 생성된 제약조건 이름 변경 RENAME TO
ALTER TABLE TABLE_NOTNULL2
RENAME CONSTRAINT TBLNN_TEL_NN TO TBLNN2_TEL_NN;


👍TRUNCATE

TRUNCATE TABLE TBL_CAR ;

-> TRUNCATE는 데이터 정의어이기 때문데 ROLLBACK 불가
-> 삭제 이후 복구 불가하기 때문에,
WHERE절을 명시한 DELETE 문 사용하는 것이 좋음.



profile
웹 개발자 공부 중
post-custom-banner

0개의 댓글