본문 바로가기

Oracle

DDL

create
alter         : data type, constraints 변경
drop
truncate

table : 데이터 저장 객체
view : select문 저장 객체
sequence : 일련번호 생성기
index : 검색속도 향상 위해 미리 만들어 놓은 객체
synonym : 동의어

* Data Type
VARCHAR2 : 가변길이 문자열
CHAR : 고정길이 문자열
NUMBER(p(총자리수),s(소수점이하자리수)) : 숫자
DATE : 날짜

* Constraints
NOT NULL :  column level constraint만 가능
UNIQUE(uq) : 중복 금지 , 단 null은 허용
PRIMARY KEY(pk) = not null + unique
FOREIGN KEY(fk) : 다른 테이블의 pk값만 허용
CHECK(ck) :  특정 조건을 만족해야 dml허용
ex) create table c5(id number, su number,
constraint c5_su_ck check(su between 0 and 5000));
성별 체크 : check (성별 in ('M','F'));
on delete cascade : 해당 row를 delete하면서 참조하는 row가 있어서 delete를 허용하는 옵션
on delete set null : 해당 field를 널로 바꾸면서 참조하는 row가 있어서 delete를 허용하는 옵션

제약조건은 테이블 생성시 inline 방식으로 column level constraint 하지 말고 
outline방식으로 table level constraint지정해 주어야 오류가 발생시 쉽게 찾을 수 있다.
ex) create table c2a( a number , b number, constraint c2a_b_uq unique(b));

create table c4(id number, data varchar2(20), c3_id number,
constraint c4_id_pk primary key(id),
constraint c4_c3id_fk foreign key(c3_id) references c3(id) on delete cascade );

* Modify : 권한, 제약 수정

alter table d2 modify(depno number(3));     : number의 데이터 타입 사이즈 수정
alter table d2 modify(loc varchar2(14) default 'none');
alter table d2 drop column dname;





'Oracle' 카테고리의 다른 글

Dictionary View 보는 방법  (0) 2011.02.13
oracle 권한보기, 테이블 정리, 시간측정  (0) 2011.02.07
view, index, sequence, synonym  (0) 2011.02.07
join문  (0) 2011.02.03
Oracle SQL, select문 구조 , 기본함수  (1) 2011.02.03