320x100
320x100

DDL (Date Definition Language)

- 데이터 정의어

 : 데이터베이스를 정의하는 언어 (생성과 삭제, 수정)

- CREATE : 데이터베이스 및 테이블 등 생성

- ALTER : 테이블에 대한 수정 (데이터가 아닌 데이터의 구조 및 속성을 수정)

- DROP : 테이블, 뷰, 인덱스 등 데이터베이스 요소 삭제

- TRUNCATE : 테이블 내 모든 데이터를 삭제하여 초기화

 

 

 

테이블 생성 (CREATE)

- create table 테이블이름 (컬럼1 자료형(길이), 컬럼2 자료형(길이)... 후략);

 : 형식에는 number(숫자형식), varchar2(문자열 형식) 등이 존재

 => ex) create table comeve (name varchar2(10), age number(3));

 

- 임시 테이블 생성

 : create global temporary table 테이블명 (....);

 

- 테이블 복사 (전체복사)

 : create table 테이블명 as select * from 원본테이블;

 

- 테이블 복사 (일부 컬럼만 복사)

 : create table 테이블명 as select col1, col2 from 원본테이블;

 

- 테이블 구조만 복사

 : create table 테이블명 as select * from 원본테이블 where 1 = 2;

 : where 절에 false조건을 명시

 

 

 

테이블을 생성할때 주의사항

- 테이블 이름은 반드시 문자로 시작해야함 (숫자로 시작 불가)

- 테이블 이름과 컬럼이름은 최대 30바이트까지 

- 테이블 이름은 한명의 사용자가 다른 오브젝트의 이름과 중복을 사용 불가

- 테이블 이름이나 오브젝트 이름은 오라클의 키워드와 중복되지 않는 것을 권장

- 테이블 이름은 한글로도 가능

 

 

 

테이블 수정 (ALTER)

- 새로운 칼럼 추가

 : alter table 테이블명 add (컬럼명 자료형(길이));

 

- 새로운 칼럼을 추가하면서 기본값 지정

 : alter table 테이블명 add (컬럼명 자료형(길이) default '기본값');

 

- 테이블의 칼럼 이름 변경

 : alter table 테이블명 rename column 칼럼명 to 바꿀이름;

 

- 테이블 이름 변경

 : rename 테이블명 to 바꿀이름;

 

- 칼럼의 크기 조정

 : alter table 테이블명 modify(칼럼명 자료형(크기));

 

- 칼럼 삭제

 : alter table 테이블명 drop column 칼럼명;

 : alter table 테이블명 drop column 칼럼명 casacade constaints; 

  = 참조관계가 있을 때

 

- 읽기전용 테이블로 변경

 : alter table 테이블명 read only;

 

- 테이블을 읽기/쓰기 모드로 변경

 : alter table 테이블명 read write;

 

 

 

테이블 삭제 (DROP / TRUNCATE)

- DROP

 : drop table 테이블명;

 : 테이블 및 데이터 전체 삭제

- TRUNCATE

 : truncate table 테이블명;

 : 데이터만 삭제

 

 

 

Data Dictionary (데이터사전)

- 오라클 데이터베이스의 메모리 구조와 파일에 대한 구조 정보

- 각 오브젝트(객체)들이 사용하고 있는 공간들에 대한 정보

- 데이터베이스 스키마 객체 정보

- 제약조건 정보

- 사용자에 대한 정보

- 권한이나 프로파일, 룰이 대한 정보

- 감사에 대한 정보

 

 

 

데이터사전의 종류

- static 사전

 : 데이터베이스에 존재하는 오브젝트 및 기타 정보에 대한 내용을 조회

- dynanmic 사전

 : 메모리 상태 및 현재 세션에 대한 정보 (내용이 계속해서 업데이트 되는 정보)

 

 

 

 

 

300x250
728x90

'Database > MySQL' 카테고리의 다른 글

SQL - Constraint (제약조건)  (0) 2020.12.15
SQL - DML (Data Manipulation Language)  (0) 2020.12.15
SQL- DDL과 DML, DCL에 대한 기초  (0) 2020.12.15
SQL - JOIN의 종류 (inner join, outer join)  (0) 2020.12.15
SQL - 복수행 함수  (0) 2020.12.15