은은하게 코드 뿌시기

[DB] DDL/Data Definition Language/데이터 정의어 본문

Database -Mysql,Oracle

[DB] DDL/Data Definition Language/데이터 정의어

은은하게미친자 2022. 8. 16. 23:47
728x90

DDL의 종류?

CREATE, ALTER,DROP, RENAME, TRUNCATE

 

+ 데이터 조작어는 실행하면 자동으로 COMMIT되기 때문에 영구히 데이터베이스에 반영됩니다.

1. CREATE : 테이블 생성 

create table emptest
 as select * table emp;
->  테이블 과 구조 복사

create table emptest like emp;
-> 구조복사

참고 : 

2. DROP : 테이블 삭제

drop table emptest;

3. ALTER : 테이블을 변경

열을 추가하는 ADD

  오라클 MYSQL
열 추가 ADD ADD
열 삭제 DROP DROP
열 이름 변경 RENAME CHANGE COLUMN
열 자료형 변경 MODIFY CHANGE COLUMN

 

예제는 MYSQL기준

ALTER TABLE `scott`.`springuser` 
ADD COLUMN `springusercol` VARCHAR(45) NULL AFTER `password`;

ALTER TABLE `scott`.`springuser` 
DROP COLUMN `springusercol`;

ALTER TABLE `scott`.`springuser` 
CHANGE COLUMN `springusercol` `COL` VARCHAR(45) NULL DEFAULT NULL ;

ALTER TABLE `scott`.`springuser` 
CHANGE COLUMN `COL` `COL` DECIMAL(10) NULL DEFAULT NULL ;

4. RENAME : 테이블 이름을 변경

오라클 MYSQL
RENAME EMPALTER TO EMP_REANME; ALTER TABLE `scott`.`springuser` 
RENAME TO  `scott`.`springuser1` ;

5. TRUNCATE : 테이블 데이터를 삭제

TRUNCATE는 데이터정의어 이기 때문에 ROLLBACK이 되지 않음, 삭제이후 복구할 수 없다.

truncate TABLE cafe01.option;

 

728x90
Comments