1. 객체를 생성, 변경, 삭제하는 데이터 정의어(DDL:DataDefinitionLanguage)
- 데이터 정의어를 사용할 때 유의점
데이터 조작어(DML)과 달리 명령어 수행하자마자 자동으로 COMMIT되기 때문에 ROLLBACK을 통한 실행취소가 불가능하므로 주의를 기울여 사용해야 함
2. 테이블을 생성하는 CREATE
CREATE TABLE 소유계정.테이블 이름( 열1 이름 열1 자료형, 열2 이름 열2 자료형, ... 열N 이름 열N 자료형 ); ※ 소유 계정이름은 생략가능(생략할 경우 현재 접속한 계정 소유의 테이블로 생성됨) |
○ 테이블 이름 생성 규칙 1. 테이블 이름은 문자로 시작해야 한다.(한글도 가능하며 숫자로 시작할 수 없음) EX) EMP99(O), 90EMP(X) 2. 테이블 이름은 30Byte 이하여야 한다.(영어는 30자, 한글은 15자까지 사용가능) 3. 같은 사용자 소유의 테이블 이름은 중복될 수 없다(SCOTT 계정에 두 EMP 테이블은 존재할 수 없음) 4. 테이블 이름은 영문자(한글 가능), 숫자(0-9)와 특수 문자 $,#,_를 사용할 수 있다. EX) EMP$90_OB 5. SQL키워드는 테이블 이름으로 사용할 수 없다(SELECT, FROM 등은 테이블 이름 사용 불가) |
○ 열 이름 생성 규칙 1. 열 이름은 문자로 시작해야 한다. 2. 열 이름은 30Byte이하여야 한다. 3. 한 테이블의 열 이름은 중복될 수 없다(EMP테이블에 EMPNO열이 두 개 존재할 수 없음) 4. 열 이름은 영문자(한글 가능), 숫자(0-9)와 특수 문자 $,#,_를 사용할 수 있다. 5. SQL 키워드는 열 이름으로 사용할 수 없다. |
- 자료형을 각각 정의하여 새 테이블 생성하기
- 기존 테이블 열 구조와 데이터를 복사하여 새 테이블 생성하기
- 기존 테이블 열 구조와 일부 데이터만 복사하여 새 테이블 생성하기
- 기존 테이블의 열 구조만 복사해서 새 테이블 생성하기
: WHERE절 조건식의 결과 값이 언제나 false가 나오게 해야 함
3. 테이블을 변경하는 ALTER - 테이블 구조 변경 시(테이블에 새 열을 추가, 삭제하거나 열의 자료형 또는 길이를 변경)
- 테이블에 열을 추가하는 ADD
- 열 이름을 변경하는 RENAME
- 열의 자료형을 변경하는 MODIFY
- 특정 열을 삭제할 때 사용하는 DROP
4. 테이블 이름을 변경하는 RENAME
5. 테이블의 데이터를 삭제하는 TRUNCATE-특정 테이블의 모든 데이터 삭제
※ TRUNCATE 명령어 사용 시 유의점
WHERE절을 명시하지 않은 DELETE절은 데이터 조작어기 때문에 ROLLBACK가능하지만 TRUNCATE는 데이터 정의어이기 때문에 ROLLBACK되지 않으므로 복구할 수 없음
6. 테이블을 삭제하는 DROP
'공부 > 데이터베이스' 카테고리의 다른 글
[오라클로 배우는 데이터베이스 입문] 13. 객체 종류 (0) | 2022.03.31 |
---|---|
[오라클로 배우는 데이터베이스 입문] 12. 연습문제 (0) | 2022.03.31 |
[오라클로 배우는 데이터베이스 입문] 11. 연습문제 (0) | 2022.03.30 |
[오라클로 배우는 데이터베이스 입문] 11. 트랜잭션 제어와 세션 (0) | 2022.03.30 |
[오라클로 배우는 데이터베이스 입문] 10. 연습문제 (0) | 2022.03.29 |