티스토리 뷰

DDL (Data Definition Language)

: CREATE(생성), ALTER(수정), TRUNCATE(잘라내기), DROP(삭제)



01. CREATE

테이블 생성

CREATE TABLE 테이블명 ( 
    컬럼명 컬럼의 유형 제약조건, 
    ...
    )

CREATE TABLE new_table(NO NUMBER(3), NAME VARCHAR2(10), BIRTH DATE);
SELECT * FROM new_table;


CREATE TABLE member(
	id 			VARCHAR(20) primary key,
	name 	VARCHAR(30),
	rdate 	date, --가입일
	point 	NUMBER(10,1),
	gender 	char(1)
	);
	
DESC member;



테이블에 데이터 넣기

INSERT INTO MEMBER(id, name, rdate, point, gender)
VALUES('bbobbogum', '박보검', SYSDATE, 616, 'm');


테이블 복사

-- 테이블 복사
-- 1) 동일한 구조의 모든 데이터를 가지고 테이블 복사
CREATE TABLE member2
AS SELECT * FROM MEMBER;

DESC MEMBER2;
SELECT * FROM MEMBER2;

--2) 동일한 구조에 일부분의 데이터 복사
CREATE TABLE emp
AS SELECT * FROM EMPLOYEES WHERE SALARY>=10000;
SELECT * FROM emp;

--3) 성명, 이메일, 연락처, 입사일만을 복사해보자
CREATE TABLE emp2
AS SELECT  FIRST_NAME as "성명", EMAIL, PHONE_NUMBER, HIRE_DATE 
FROM EMPLOYEES;
SELECT * FROM emp2;

--4) 급여가 10000원 이상인 직원의 성명, 이메일, 연락처, 입사일을 복사해주세요
CREATE TABLE  emp3
AS SELECT  FIRST_NAME as "성명", EMAIL, PHONE_NUMBER, HIRE_DATE 
FROM EMPLOYEES
WHERE SALARY>=10000;
SELECT * FROM emp3;


--5) 데이터 없이 구조만 복사
CREATE TABLE emp4 AS SELECT * FROM EMPLOYEES WHERE 1=2;
SELECT * FROM emp4;





02. DROP

DROP TABLE emp4;

※신중하게 사용할 것




03. ALTER

-----------------------
---테이블 구조 변경(DDL)
-----------------------
-- 만들었던 member 테이블에
--이메일(email varchar(50)), 
--닉네임(nickname varchar(30)), 
--연락처(phone varchar(20)) 컬럼 추가
ALTER TABLE MEMBER
ADD (email VARCHAR(50));
ALTER TABLE MEMBER
ADD (nickname VARCHAR(30));
ALTER TABLE MEMBER
ADD (phone VARCHAR(20));
ALTER TABLE MEMBER
ADD (a VARCHAR(50), b VARCHAR(10));

ALTER TABLE MEMBER DROP COLUMN b;
DESC member;
SELECT * FROM MEMBER;


--name 이라는 컬럼명을 irum으로 수정
ALTER TABLE MEMBER RENAME COLUMN name TO irum;
-- irum이라는 컬럼의 크기를 50바이트로 변경
ALTER TABLE MEMBER MODIFY(irum varchar(50));
--phone 컬럼 삭제
ALTER TABLE MEMBER DROP COLUMN phone;
--member테이블 이름을 student로 변경
RENAME member TO student;
DESC student;



댓글