[오라클]DDL명령어로 테이블을 만들기, 수정하기 ( CREATE / ALTER )

 

오라클의 명령어로는 크게 4가지로 나뉜다.

DDL(Data Definition Language) -  CREATE(생성), ALTER(수정), TRUNCATE(잘라내기),DROP(삭제)

DML(Data Manipulation Language) - INSERT(입력), UPDATE(변경), DELETE(삭제), MERGE(병합)

DCL(Data Control Language) - GRANT(권한 주기), REVOKE(권한 뺏기)

TCL(Transation Control Language) - COMMIT(확정), ROLLBACK(되돌리기)

 

 DDL명령어에는 

 CREATE , TRUNCATE, ALTER, DROP 명령이 있다.

 실제 업무를 할때 신입사원에게는 당장 필요하진 않겠지만 다른 실습을 좀 더 편하게 하기위해 

 간단하게만 정리하고 넘어가겠다.

 

1.CREATE - 테이블 생성

1.일반 테이블 생성

no,name이 컬럼명

NUMBER,VARCHAR2가 타입, 숫자가 크기를 나타낸다.

*컬럼 이름으로 한글을 써도 되지만 실제 사용시 단점이 많기때문에 잘 고려해서 사용하자.


2.기본 값을 입력하며 생성하기

CREATE TABLE [ 테이블명 ] 
( no NUMBER(3,1) DEFAULT 0,
 name VARCHAR2(10) DEFAULT 'no name',
 hiredate DATE DEFAULT SYSDATE);

컬럼명 =>  no,name,hiredate 

타입 => NUMBER,VARCHAR2,DATE(날짜)

DEFAULT 뒤에 있는것들이 기본으로 생성 되는 값들.

저 상태에서 

INSERT INTO create_Test (name) VALUES('a');

=> 입력 해주면 테이블 1행이 추가되고 name 컬럼에 a가추가된다. no랑 hiredate에는 기본값인 no name이랑 system날짜가 입력된다.

 
이 외에도 테이블 복사(CTAS)/ 모든컬럼 복사/ 특정컬럼 복사 / 테이블 구조만 복사 하는 기능이 있다.

 

3.기본 테이블을 참조하여 테이블 생성

기존 테이블의 A,B,C 컬럼 중에 A,B 컬럼의 값만 참조하여 새로운 테이블 만들 수 있다.


문법

CREATE TABLE 새로운테이블 AS SELECT 가져올 컬럼들 FROM 기존테이블;

 

 

2.ALTER 명령


Alter 명령어는 만들어져 있는 오브젝트를 변경하는 명령어.

컬럼을 변경하는  작업가능.

ALERT 문법


1. 컬럼 속성 변경하기 
 => ALTER TABLE [ 테이블 ] MODIFY [컬럼] 

 

위 명령어를 입력했더니 보이는것과같이 ID컬럼의 데이터형식이 NVARCHAR2로 바뀐것을 볼 수 있다.
이 명령어는 컬럼 안에 데이터가 바뀌는 데이터 형식의 조건에 맞는 경우만 가능하고, 크기도 마찬가지로 내가 변경하려는 크기를 초과한 값이 있다면 변경할 수 없다.


2. 컬럼 이름 변경하기
 => ALTER TABLE [ 테이블 ] RENAME COLUMN [ 원래 컬럼 ] TO [ 바꿀 컬럼 ]

 

3. DROP으로 컬럼 삭제하기 
 
=> ALTER TABLE [테이블] DROP COLUMN [컬럼];

현재 DROP 명령을 실행하기 전의 MEMBER 테이블의  상태이다.

ALTER TABLE member DROP COLUMN brith; 라는 명령어를 입력하고 SELECT로 확인해보자. 

birth 컬럼이 삭제된것을 확인할 수 있다.

 

 3. 컬럼 추가하기
 
=> ALTER TABLE [테이블] ADD [컬럼] VARCHAR2(50);  

위의 ADD 명령을 사용해서 birth 라는 컬럼을 다시 추가해보겠다. 

 컬럼이 생성된것을 확인할 수 있다.

 

4. 테이블 이름 변경하기
=>ALTER TABLE [기존테이블] RENAME TO [새로운테이블];

 

5.컬럼이름 변경하기
=>ALTER TABLE [테이블명] RENAME COLUMN [기존컬럼] TO [새로운컬럼];

댓글

Designed by JB FACTORY