Data Base_Oracle/SQL
SQL_DDL Create & 자료형 & 데이터 백업
pathas
2020. 1. 4. 15:24
DDL _ Create, Alter, Drop
Data Definition Language : 데이터 정의어
Table Create생성, Alter수정, Drop삭제 구문
Table 설계
필드 이름, 필드 자료형, 유효성 검사 규칙 등을 설정하는 것
table 구조
[ SQL> desc b_prtest ]
이름 | 널? | 유형 |
---|---|---|
ID | NUMBER(5) | |
NAME | VARCHAR2(10) |
Create
테이블의 구조를 정의하는 구문
§ 형식
[ SQL> create table table명(필드명1 자료형1 제약조건1,
필드명2 자료형2 제약조건2,,,,); ]
※ 필드명과 자료형은 꼭 지정해 주어야 테이블 생성이 허용됨
자료형
자료형 | 설명 |
---|---|
char(size) | 고정 길이 문자 데이터, 입력된 자료의 길이와 상관없이 정해진 길이만큼 저장 영역 차지, 최소 크기 1 |
varchar2(size) | 2000바이트까지 설정 가능한 가변 길이 문자 데이터, 실제 입력된 문자열의 길이만큼 저장 영역 차지, 최대 크기를 명시해야 하며, 최소 크기는 1 |
number | 40자리까지 숫자 저장 가능, 소수점이나 부호는 길이에 포함 X |
number(w) | w자리까지의 수치로 최대 38자리까지 가능 |
number(w, d) | w는 전체 길이, d는 소수점 이하 자릿수, 소수점(.)은 길이에 포함 되지 않음 |
date | BC 4712/01/01 ~ AD 4712/12/31까지의 날짜 지정 가능 |
long | 가변 길이 문자 데이터, 최대 2GB까지 저장 가능 |
lob | 2GB까지의 가변 길이 바이너리 데이터 저장 가능 이미지 문서, 실행 파일 저장 가능 |
# 예제
[ SQL> create table table1(name varchar2(10), age number(3));
테이블이 생성되었습니다.
SQL> desc table1 ]
이름 | 널? | 유형 |
---|---|---|
NAME | VARCHAR2(10) | |
AGE | NUMBER(3) |
백업 Table 생성
§ 형식
- Full Backup_모든 데이터 백업
[ SQL> create table 백업table명 as select * from 원본table명; ] - Partial Backup_부분 데이터 백업
[ SQL> create table 백업table명 as select * from 원본table명 where 조건식; ] - ※ 데이터만 백업이 되고 제약조건은 적용되지 않기 때문에 백업 테이블에 대한
제약조건을 다시 설정해야 함
#예제
▷ 원본 테이블 prtest
[ SQL> select * from prtest; ]
ID | NAME |
---|---|
1 | 홍길동 |
2 | 이순신 |
3 | 강감찬 |
▶ 완전 백업 테이블 b_prtest 생성
[ SQL> create table b_prtest as select * from prtest;
SQL> select * from b_prtest; ]
ID | NAME |
---|---|
1 | 홍길동 |
2 | 이순신 |
3 | 강감찬 |
▶ 부분 백업 테이블 b_prtest2 생성
[ SQL> create table b_prtest2 as select * from prtest where id=1;
SQL> select * from b_prtest2; ]
ID | NAME |
---|---|
1 | 홍길동 |
테이블을 생성하는 create구문에 대해 알아보았습니다.
create를 활용하여 데이터를 백업해두면 만일의 사태에 대비할 수 있을 것입니다.