< 테이블 생성하기 >
- CREATE TABLE ( 컬럼명1 제약조건 , 컬럼명2 제약조건, ...); 가 기본틀이다
- 아래의 2개 테이블 설계도 참고해서 테이블을 생성해보겠음
CREATE TABLE title(
title_id number(10) constraint t_tid_pk PRIMARY KEY,
title varchar2(60) constraint t_tit_nn NOT NULL,
description varchar2(400) constraint t_des_nn NOT NULL,
rating varchar2(4) constraint t_rat_ck CHECK(rating in('G','PG','R','NC17','NR')),
category varchar2(20) constraint t_cat_ck CHECK(category in('DRAMA','COMEDY','ACTION','CHILD','SCIFI','DOCUMENTARY')),
release_date date
);
CREATE TABLE title_copy(
copy_id NUMBER(10),
title_id NUMBER(10) CONSTRAINT title_id_fk REFERENCES title(title_id),
status VARCHAR2(15) CONSTRAINT status_nn NOT NULL
CONSTRAINT status_ck CHECK (status IN ('AVAILABLE','DESTROYED','RENTED','RESERVED')),
CONSTRAINT copy_title_id_pk PRIMARY KEY (copy_id, title_id)
);
① desc
- desc 테이블명;
- 테이블을 생성 후 테이블 구조를 볼 수 있다
② 서브쿼리 이용해서 테이블 생성
- 주로 테스트용으로 테이블 그대로 복사할 때 많이 사용
CREATE TABLE copy_emp
AS (SELECT * FROM employees WHERE 1=2);
INSERT INTO copy_emp
SELECT * FROM employees;
==
CREATE TABLE copy_emp
AS (SELECT * FROM employees);
· == 을 기준으로 같은 테이블 생성 결과를 보여주는 쿼리다
· 맨 위의 CREATE문은 테이블의 구조만 들고와서 그 후에 INSERT문으로 데이터 넣어준것
· 아래의 CREATE문은 구조와 데이터값 넣는 것을 합친 쿼리
'자바 웹 개발자가 될거야 > DB' 카테고리의 다른 글
[Oracle] 제약조건 확인 스크립트 생성 및 불러오기 (0) | 2021.12.14 |
---|---|
[Oracle] 테이블 수정하기 / ALTER문 (0) | 2021.12.07 |
[Oracle] 테이블 제약조건 / 컬럼레벨 테이블레벨 (0) | 2021.12.07 |
[Oracle] 테이블 제약조건 정보 조회 / 쿼리(스크립트) 저장하는 방법 (0) | 2021.12.07 |
[Oracle] UPDATE문 / 트랜잭션 시작 및 종료 / 치환변수 / 쿼리 스크립트 저장 및 불러오기 (0) | 2021.11.26 |