Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- DFS
- 문자열
- SW Expert Academy
- 오라클
- javascript
- 그래프 이론
- 깊이우선탐색
- 백준 알고리즘
- 브루트포스
- DP
- BFS
- 너비우선탐색
- 스택
- 백준알고리즘
- oracle
- 브루트포스 알고리즘
- 완전탐색
- 데이터베이스
- SWEA
- Python
- 자바스크립트
- 다익스트라
- 그리디 알고리즘
- 너비 우선 탐색
- 그래프 탐색
- 백트래킹
- 다이나믹 프로그래밍
- 파이썬
- 구현
- 프로그래머스
Archives
- Today
- Total
민규의 흔적
[오라클 DB] 데이터 조작어(DML) - INSERT, DELETE, UPDATE문 본문
데이터 조작어(DML)
DB 스키마 내에 데이터를 검색, 삽입, 삭제, 수정하는 역할을 수행하는데 사용되는 언어이다.
INSERT문
릴레이션에 튜플을 삽입한다.
참조되는 릴레이션에 튜플이 삽입되는 경우에는 참조 무결성 제약조건의 위배가 발생하지 않으나,
참조하는 릴레이션에 튜플이 삽입되는 경우에는 참조 무결성 제약조건을 위배할 수 있다.
릴레이션에 한 번에 한 튜플씩 삽입하는 것과 한 번에 여러 개의 튜플을 삽입할 수 있는 것으로 구분한다.
릴레이션 한 번에 한 튜플씩 삽입하는 INSERT문 포맷
INSERT INTO 릴레이션(애트리뷰트1, ... , 애트리뷰트n) VALUES (값1, ... , 값n);
-> 애트리뷰트 리스트를 생략하면 릴레이션을 정의할 때 지정한 속성의 순서대로 값이 삽입된다.
INSERT INTO 릴레이션 VALUES (값1, ... , 값n);
-> 값1부터 값n까지 차례로 릴레이션의 첫 번째 애트리뷰트부터 순서대로 기입된다.
질의 1. 고객 릴레이션에 (strawberry, 최유경, 30, vip, 공무원, 100) 튜플을 삽입하는 INSERT문을 작성하시오.
INSERT INTO 고객(고객아이디, 고객이름, 나이, 등급, 직업, 적립금)
VALUES ('strawberry', '최유경', 30, 'vip', '공무원', 100);
질의 2. DEPARTMENT 릴레이션에 (5, 연구, NULL) 튜플을 삽입하는 INSERT문을 작성하시오.
INSERT INTO DEPARTMENT VALUES (5, '연구', '');
릴레이션에 한 번에 여러 개의 튜플들을 삽입하는 INSERT문
질의 3. EMPLOYEE 릴레이션에 급여가 3000000 이상인 사원들의 이름, 직급, 급여를 검색하여 HIGH_SALARY 라는 릴레이션에 삽입하는 INSERT문을 작성하시오.
HIGH_SALARY 릴레이션 생성
CREATE TABLE HIGH_SALARY(
ENAME char(10),
TITLE char(10),
SAL number
);
INSERT INTO HIGH_SALARY(ENAME, TITLE, SAL)
SELECT EMPNAME, TITLE, SALARY
FROM EMPLOYEE
WHERE SALARY >= 3000000;
UPDATE문
한 릴레이션에 들어 있는 튜플들의 애트리뷰트 값들을 수정한다.
기본 키나 외래 키에 속하는 애트리뷰트의 값이 수정되면 참조 무결성 제약조건을 위배할 수 있다.
질의 4. DEPARTMENT 릴레이션에 5번 부서를 3층으로 수정하는 UPDATE문을 작성하시오.
UPDATE DEPARTMENT
SET FLOOR = 3
WHERE DEPTNO = 5;
DELETE문
한 릴레이션으로부터 한 개 이상의 튜플들을 삭제한다.
참조되는 릴레이션의 삭제 연산의 결과로 참조 무결성 제약조건이 위배될 수 있으나, 참조하는 릴레이션에서 튜플을 삭제하면 참조 무결성 제약조건을 위배하지 않는다.
질의 5. DEPARTMENT 릴레이션에 5번 부서를 삭제하는 DELETE문을 작성하시오.
DELETE
FROM DEPARTMENT
WHERE DEPTNO = 5;
'데이터베이스' 카테고리의 다른 글
[오라클 DB] 데이터베이스 설계 (0) | 2023.10.22 |
---|---|
[오라클 DB] 트리거(Trigger) (0) | 2023.10.22 |
[오라클 DB] 데이터 조작어(DML) - SELECT문 (0) | 2023.10.21 |
[오라클 DB] 데이터 정의어(DDL) (0) | 2023.10.18 |
[오라클 DB] SQL 개요 (0) | 2023.10.18 |