원지의 개발
article thumbnail
728x90

 

DDL (Data Definition Language)

  • 오라클(한정)에서는 이름의 대소문자를 구분 X
  • 여기서는 commit, rollback 사용 X
  • 테이블과 같은 데이터 구조를 정의하는데 사용되는 명령어
  • (생성, 변경, 삭제, 이름변경) 데이터 구조와 관련된 명령어.

마우스로 DDL 사용

더보기

1. 테이블 - 오른쪽 마우스 - 편집 클릭

 

2. 테이블 편집에서 +, x 눌러서 컬럼 추가, 삭제 후

 

3. 확인을 누르기 전 DDL 확인 - SQL문 확인 가능

C.R.U.D

이름 조작 SQL
Create 생성 INSERT
Read 읽기(또는 인출) SELECT
Update 갱신 UPDATE
Delete 삭제(또는 파괴) DELETE

Create table

데이터 타입

데이터 타입 특징 크기
varchar2 (size) 가변 길이 문자 조금 쓰면 알아서 크기 조금 잡아서 씀 Max 사이즈까지 가능
size 바이트
char (size) 고정 길이 문자 무조건 고정 길이 다 씀 size 바이트
number (p, s) 숫자   p - 모든 유효숫자 자리수
s - 소수의 자리수
(음수: 소수점기준 왼쪽,
양수: 소수점 이하)
date 날짜와 시간 값    
clob 문자 데이터 큰 문자 데이터 4기가
blob 이진 데이터 파일, 동영상 데이터
통째로 집어 넣을 때 사용
4기가

Alter table

  • 테이블 구조 변경

Add - 열 추가

  • 열을 추가
  • 새로운 열이 마지막 열

Modify - 타입 크기 조정

  • 바꿀 타입의 크기만 적으면 됨
  • 테이블에 있는 기존의 열을 변경
  • 기존의 데이터를 손상되게 크기를 조절 X
  • 줄일수는 있으나 쉽지 않고, 크기를 넘어가는 것은 X

Rename column - 열 이름 변경

  • 열 이름 변경

Drop column - 열 삭제

  • 테이블에서 열 삭제
  • 삭제된 열은 복구 불가
  • 큰 제목 Drop table은 테이블 삭제임


Drop table

  • 테이블의 모든 데이터와 구조 삭제
  • 어떤 결정되지 않은 트랜잭션 커밋
  • 모든 인덱스 삭제
  • 롤백 불가!!!!!!!!!!!!

더보기 - cascade

더보기

실습

-- DDL문 create문
create table dept2 (
    dept_no number(2), -- 자리수
    dept_name varchar(20), -- 가변문자(20바이트, 영어1byte, 한글2byte),
    dept_yn char(1), -- 1byte 고정
    dept_date date,
    dept_bonus number(10, 3) -- (정수 자리수, 소수 자리수)  
);

desc dept2;
insert into dept2 values(99, '영업', 'Y', sysdate, 3.14);
insert into dept2 values(100, '회계', 'Y', sysdate, 14.123); -- dept_no 자리수

commit;
select * from dept2;

----------------------------------------------------------------------------------------
-- alter (테이블 구조 변경)

-- 컬럼 추가
alter table dept2
add (dept_count number(3));

desc dept2;

-- 컬럼명 변경
alter table dept2 rename column dept_count to emp_count;

-- 컬럼 타입 변경 (데이터가 있을 때, 손상되는 크기로 줄일 수 없음)
alter table dept2 modify (emp_count number(5));

-- 컬럼 삭제
alter table dept2 drop  column emp_count;


-- 테이블 삭제
drop table dept2;
drop table demployees; -- 제약조건을 삭제 불가 (cascade로 제약조건을 지우면서 삭제는 가능, 실제로 쓰지 X)

Truncate

  • DDL 구문으로 롤백 할 수 없음
  • 위험하기 때문에 사용되지 X
  • 해당 테이블에 사용된 기억 공간을 해제
  • truncate 대안으로 delete 문장을 사용하여 행을 삭제

오늘 하루

더보기

기억에 남는 부분

 

어려운 부분

 

문제 해결 부분

 

728x90
profile

원지의 개발

@원지다

250x250