DML
- 종류: INSERT(추가), UPDATE(변경), DELETE(삭제)
- DML 문을 작성한 후에는 TCL을 통해 작업을 종료해야 한다.
- TCL: COMMIT(저장), ROLLBACK(리턴)
INSERT
INSERT INTO 테이블명 (컬럼1, 컬럼2, ......)
VALUES (컬럼1 값, 컬럼2 값, .......);
- 기존에 만들어진 테이블에 값을 추가할 때 사용한다.
UPDATE
UPDATE 테이블명 SET 컬럼명 = 변경할 값
WHERE 조건;
- 테이블의 컬럼 값을 변경할 때 사용한다.
- WHERE 절의 조건을 작성하지 않으면 모든 컬럼의 값이 변경된다.
DELETE
DELETE FROM 테이블명
WHERE 조건;
- 테이블의 값을 삭제할 때 사용한다.
- WHERE 절의 조건을 작성하지 않으면 테이블의 모든 컬럼의 값이 삭제된다.
실습
1. 다음 INSERT 문을 실행하고 입력 결과를 확인한다.
SQL> INSERT INTO emp (eno,hdate) VALUES (5, TO_DATE('12', 'MM'));
SQL> INSERT INTO emp (eno,hdate) VALUES (6, TO_DATE('10', 'DD'));
SQL> INSERT INTO emp (eno,hdate) VALUES (7, TO_DATE('9', 'HH24'));
SQL> INSERT INTO emp (eno,hdate) VALUES (8, TO_DATE('12', 'MI'));
SQL> INSERT INTO emp (eno,hdate) VALUES (9, TO_DATE('20', 'SS'));
SQL> INSERT INTO emp (eno,hdate) VALUES (10, sysdate);
2. Emp 테이블의 행을 모두 삭제하고 다음 제시된 데이터를 입력한다.
2001 남궁연호 남 개발 0202 1993/12/13 3950 200 10
2002 제갈민 남 개발 0202 1996/04/30 1520 2000 20
2003 정의찬 남 개발 0202 1992/03/03 4350 30
2007 이초록 남 개발 0001 1992/09/05 1989 2300 30
2008 윤고은 여 개발 0001 1992/03/03 2100 40
DELETE FROM emp;
INSERT INTO emp (eno, ename, sex, job, mgr, hdate, sal, comm, dno)
VALUES ('2001', '남궁연호', '남', '개발', '0202', '1993/12/13', 3950, 200, '10');
INSERT INTO emp (eno, ename, sex, job, mgr, hdate, sal, comm, dno)
VALUES ('2002', '제갈민', '남', '개발', '0202', '1996/04/30', 1520, 2000, '20');
INSERT INTO emp (eno, ename, sex, job, mgr, hdate, sal, comm, dno)
VALUES ('2003', '정의찬', '남', '개발', '0202', '1992/03/03', 4350, NULL, '30');
INSERT INTO emp (eno, ename, sex, job, mgr, hdate, sal, comm, dno)
VALUES ('2007', '이초록', '남', '개발', '0001', '1992/09/05', 1989, 2300, '30');
INSERT INTO emp (eno, ename, sex, job, mgr, hdate, sal, comm, dno)
VALUES ('2008', '윤고은', '여', '개발', '0001', '1992/03/03', 2100, NULL, '40');
3. 모든 학생의 성적을 4.5만점 기준으로 수정한다.
UPDATE student SET avr = avr*4.5/4.0;
4. 모든 교수의 부임일자를 100일 앞으로 수정한다.
UPDATE professor SET hiredate = TRUNC(hiredate, 'DD') - 100;
5. 화학과 2학년 학생의 정보를 삭제한다.
DELETE FROM student
WHERE major = '화학' AND syear = 2;
6. 조교수의 정보를 삭제한다.
DELETE FROM professor
WHERE orders = '조교수';
'SQL' 카테고리의 다른 글
제약 조건 PK, FK (0) | 2024.02.26 |
---|---|
SQL 테이블 생성과 테이블 타입(DDL) (0) | 2024.02.26 |
SQL select - 실습16 (0) | 2024.02.01 |
SQL select - 실습15 (0) | 2024.02.01 |
SQL select - 실습14 (0) | 2024.02.01 |