본문 바로가기
프로그래밍 공부/DBMS

[lesson] DBMS - DML (데이터 조작어), TCL (트랜잭션)

by Luna_lua 2021. 8. 12.
반응형

테이블을 만들었다면 이번에는 데이터를 넣고, 꺼내고, 삭제하고, 수정하는걸 해보려합니다!

이런한 작업을  Create(생성), Read(읽기), Update(갱신), Delete(삭제)의 앞글자만 따서 CRUD라고 부릅니다.

 

<DML : Data Manipulation Language>

1. SELECT : 조회(검색)

2. INSERT : 추가

3. UPDATE : 수정

4. DELETE : 삭제

 

-- SELECT
-- 전체 테이블 조회
SELECT * FROM PRODUCT;

-- 테이블 정보 중 특정 컬럼 조회
SELECT PRODUCT_NAME FROM PRODUCT;

-- 테이블 정보 중 특정 튜플(행) 조회
SELECT * FROM PRODUCT
WHERE PRODUCT_NAME = '목도리';

-- INSERT
INSERT INTO PRODUCT
VALUES (1,'목도리',15000,2);

INSERT INTO PRODUCT (PRODUCT_NUM, PRODUCT_NAME, PRODUCT_PRICE, PRODUCT_COUNT)
VALUES (2,'시계',198000,1);

-- UPDATE
UPDATE PRODUCT
SET PRODUCT_PRICE = PRODUCT_PRICE * 1.2
WHERE PRODUCT_NAME = '목도리';

-- DELETE
DELETE FROM PRODUCT
WHERE PRODUCT_NUM = 1;

+) WHERE 절에서 사용하는 조건식!

>, < : 초과, 미만
>=, <= : 이상, 이하
=, : 같다
<>, !=, ^= : 같지 않다
AND : 조건식 2개 모두 참일때 참 
OR : 하나라도 참이면 참

 

<TCL : Transaction Control Language>

트랜젝션 제어어 이며 DML에서만 사용이 가능합니다.

 

트랜잭션이란 하나의 작업단위이며 종류에는 COMMIT, ROLLBACK이 있습니다.

COMMIT : 지금까지 한 작업을 확인했고, 화정하는 명령어

ROLLBACK : 이전 커밋한 지점으로 이동

 

1차 COMMIT을 한 후 DML을 사용하다가 데이터가 잘못 저장되었다면 1차 COMMIT 한곳으로 돌아가기 위해 ROLLBACK을 사용하고, 데이터 저장 및 작업이 확정되었으면, COMMIT을 사용한다.

=> CMD 창에서 COMMIT; OR ROLLBACK을 사용하며, 다른 프로그램을 보면 AUTO와 수동으로 구분되어있으니 확인 해보고 사용하면 됩니다.

AUTO

 

수동 변경 시
한번의 DML 사용시
두번의 DML 사용 시

이렇게 수동으로 하면 작업한 단위가 위에 표시가 되고 어느정도 작업이 되었거나, 수정할때 왼쪽의 COMMIT OR ROLLBACK을 눌러 상태를 저장 또는 이전으로 변경하면 됩니다.

반응형