데이터 추가
CREATE TABLE DEPT_TEMP AS
SELECT *
FROM DEPT;
DROP TABLE DEPT_TEMP;
INSERT INTO DEPT_TEMP (DEPTNO, DNAME, LOC)
VALUES (50, 'DATABASE', 'SEOUL');
INSERT INTO DEPT_TEMP
VALUES (60, 'NETWORK', 'BUSAN');
SELECT *
FROM DEPT_TEMP;
INSERT INTO DEPT_TEMP
VALUES (70, 'WEB', NULL);
INSERT INTO DEPT_TEMP
VALUES (80, 'WEB', '');
INSERT INTO DEPT_TEMP(DEPTNO, LOC)
VALUES (90, 'INCHEON');
CREATE TABLE EMP_TEMP AS
SELECT *
FROM EMP
WHERE 1 <> 1;
INSERT INTO EMP_TEMP (EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO)
VALUES (9999, '홍길동', 'PRESIDENT', NULL, '2001/01/01', 5000, 1000, 10);
SELECT *
FROM EMP_TEMP;
INSERT INTO EMP_TEMP (EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO)
VALUES (1111, '성춘향', 'MANAGER', 9999, '2001-01-05', 4000, NULL, 20);
INSERT INTO EMP_TEMP(EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO)
VALUES (2111, '이순신', 'MANAGER', 9999, TO_DATE('07/01/2001', 'DD/MM/YYYY'), 4000, NULL, 20);
INSERT INTO EMP_TEMP(EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO)
VALUES (3111, '심청이', 'MANAGER', 9999, SYSDATE, 4000, NULL, 20);
INSERT INTO EMP_TEMP(EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO)
SELECT E.EMPNO,
E.ENAME,
E.JOB,
E.MGR,
E.HIREDATE,
E.SAL,
E.COMM,
E.DEPTNO
FROM EMP E,
SALGRADE S
WHERE E.SAL BETWEEN S.LOSAL AND S.HISAL
AND S.GRADE = 1;
데이터 수정
CREATE TABLE DEPT_TEMP2 AS
SELECT *
FROM DEPT;
SELECT *
FROM DEPT_TEMP2;
UPDATE DEPT_TEMP2
SET LOC = 'SEOUL';
ROLLBACK;
UPDATE DEPT_TEMP2
SET DNAME = 'DATABASE',
LOC = 'SEOUL'
WHERE DEPTNO = 40;
UPDATE DEPT_TEMP2
SET (DNAME, LOC) = (SELECT DNAME, LOC FROM DEPT WHERE DEPTNO = 40)
WHERE DEPTNO = 40;
UPDATE DEPT_TEMP2
SET LOC = 'SEOUL'
WHERE DEPTNO = (SELECT DEPTNO FROM DEPT_TEMP2 WHERE DNAME = 'OPERATIONS');
SELECT *
FROM DEPT_TEMP2;
데이터 삭제
CREATE TABLE EXP_TEMP2 AS
SELECT *
FROM EMP;
SELECT *
FROM EXP_TEMP2;
DELETE
FROM EXP_TEMP2
WHERE JOB = 'MANAGER';
DELETE
FROM EXP_TEMP2
WHERE EMPNO IN (SELECT E.EMPNO
FROM EXP_TEMP2 E,
SALGRADE S
WHERE E.SAL BETWEEN S.LOSAL AND S.HISAL
AND S.GRADE = 3
AND E.DEPTNO = 30);
DELETE
FROM EXP_TEMP2;