반응형
트랜잭션 제어어(TCL : Transaction Control Language)
트랜잭션의 DML(Data Manipulation Language, 데이터 조작어) 작업 단위를 제어하는 명령어
1. COMMIT
1) 트랜잭션을 완료하여 데이터 변경사항을 최종 반영한다.
2) COMMIT 이후 데이터 상태
- 데이터에 대한 변경 사항이 물리적인 디스크에 반영
- COMMIT 이전 데이터는 복구 불가능
- 변경된 결과를 모든 사용자가 볼 수 있음
- 관련된 행에 대한 잠금(LOCK)이 풀리며, 다른 사용자들이 조작 가능
2. ROLLBACK
1) 데이터 변경사항을 이전 상태로 되돌리는 명령어이다.
2) ROLLBACK 이후 데이터 상태
- ROLLBACK된 DML 문장은 메모리 상의 Buffer에만 영향을 미치기 때문에 복구 가능
- 관련된 행에 대한 잠금(Lock)이 풀리게 됨
3. SAVEPOINT
1) 지정된 특정 시점까지 Rollback할 수 있는 명령어이다.
2) SAVEPOINT 활용 예시
INSERT...;
SAVEPOINT A;
UPDATE...;
SAVEPOINT B;
DELETE...;
ROLLBACK TO A;
데이터 검색어(SELECT)
1. 문법 예시
SELECT DISTINCT * FROM table_name WHERE flag = 1 ORDER BY rank DESC;
SELECT tenis, COUNT(*) FROM game GROUP BY tenis HAVING COUNT(*) > 10;
SELECT num1 + num2 AS num3 from table_name;
2. 설명
항목 | 설명 |
DISTINCT | 중복되는 행을 제거하는 옵션 |
* | 테이블의 모든 컬럼을 출력 |
alias | 특정 column에 대해서 AS 키워드를 활용하여 별도의 이름을 부여 |
WHERE |
1. 조건을 만족하는 행들만 검색 2. 조건으로는 column, 표현식, 상수 및 비교 연산자 |
GROUP BY | 그룹핑하고자 하는 단위 지정 |
HAVING |
그룹핑한 결과값에 대한 조건 검색 WHERE 절에서는 COUNT 등의 집계 함수를 쓰지 못하므로 GROUP BY와 함께 HAVING을 사용 |
ORDER BY |
질의 결과 정렬을 위한 옵션 ASC - 오름차순, Default DESC - 내림차순 |
반응형
'정보처리기사 실기(개편) > 데이터 입출력 구현' 카테고리의 다른 글
[정보처리기사 실기 - 데이터 입출력 구현]SQL 성능 개선 순서, TKPROF 수행 순서 (0) | 2020.05.03 |
---|---|
[정보처리기사 실기 - 데이터 입출력 구현]SQL PLUS 활용 (0) | 2020.05.02 |
[정보처리기사 실기 - 데이터 입출력 구현]DDL, DML, DCL (0) | 2020.04.30 |
[정보처리기사 실기 - 데이터 입출력 구현]논리 데이터 모델링 (0) | 2020.04.25 |
[정보처리기사 실기 - 데이터 입출력 구현]데이터 모델링 (0) | 2020.04.25 |