Jay's Cookbook
Menu
  • Tags
  • Categories
  • Projects
Computer Science
OS
Network
Data Structure
Algorithm
Language
Code Architecture
Python
Javascript
Typescript
Java
Backend
Backend Theory
TypeORM
Node.js
NestJS
FastAPI
Frontend
HTML/CSS
React
Next.js
Data Engineering
DE Theory
MySQL
MongoDB
Elastic
Redis
Kafka
Spark
Airflow
AI
Basic
Pytorch
NLP
Computer Vision
Data Analytics
Statistics
Pandas
Matplotlib
DevOps
Git
Docker
Kubernetes
AWS
[MySQL] TCL: COMMIT, ROLLBACK, SAVEPOINT
data_engineering
mysql

[MySQL] TCL: COMMIT, ROLLBACK, SAVEPOINT

Jay Kim
Jay Kim 27 Mar 2021
[MySQL] DCL: GRANT, REVOKE [MySQL] 유틸리티(View, CTE, Trigger, Function, Procedure, Cursor)

Table of Contents

  • 오토커밋 확인하기
  • 트랜잭션 기능 활성화
  • 트랜잭션 처리
  • 상태 저장

  • 트랜잭션은 Session 단위로 제어됨
  • DDL 작업에 대해서는 ROLLBACK 적용 안됨 (DDL은 AutoCommit)

오토커밋 확인하기

  • AutoCommit은 DML 실행문이 자동으로 커밋되는 것을 의미
  • 해제해야 트랜잭션 처리 가능
SHOW VARIABLES LIKE '%commit%'

트랜잭션 기능 활성화

START TRANSACTION

SET AUTOCOMMIT = FALSE

트랜잭션 처리

-- DML 작업을 한 후
UPDATE <테이블> SET <컬럼명> = <값> WHERE <조건>

-- 커밋하고 싶은 경우
COMMIT

-- 롤백하고 싶은 경우
ROLLBACK

상태 저장

-- DML 작업을 한 후
UPDATE <테이블> SET <컬럼명> = <값> WHERE <조건>

-- 이전 까지의 상태를 x로 저장
SAVEPOINT x

-- x 상태로 롤백
ROLLBACK TO SAVEPOINT x
[MySQL] DCL: GRANT, REVOKE [MySQL] 유틸리티(View, CTE, Trigger, Function, Procedure, Cursor)

You may also like

See all mysql
12 Jul 2022 [MySQL] SQL을 이용한 데이터 분석에서 겪었던 다양한 경험들
data_engineering
mysql

[MySQL] SQL을 이용한 데이터 분석에서 겪었던 다양한 경험들

11 Jul 2022 [MySQL] SQL 문제
data_engineering
mysql

[MySQL] SQL 문제

03 Jul 2022 [MySQL] 그라파나를 이용해 MySQL 서버 모니터링 하기
data_engineering
mysql

[MySQL] 그라파나를 이용해 MySQL 서버 모니터링 하기

Jay Kim

Jay Kim

Web development, data engineering for human for the Earth. I share posts, free resources and inspiration.

Rest
Lifestyle
Hobby
Hobby
Hobby
Hobby
2025 © Jay's Cookbook. Crafted & Designed by Artem Sheludko.