MySQL 요약 (5) -TCL 언어

1. 의미

트랜잭션 : 하나 이상의 SQL 문이 실행 단위를 형성하고 SQL 문 그룹이 실행되거나 실행되지 않습니다.

2. 기능 (ACID)

원 자성 : 트랜잭션은 모두 실행되거나 실행되지 않은 분할 할 수없는 전체입니다
.C 일관성 : 트랜잭션은 하나의 일관된 상태에서 다른 일관된 상태로 데이터를 전환 할 수 있습니다
. 서로
D 지속성 : 트랜잭션이 커밋되면 영구적으로 로컬

셋, 업무 사용 단계 ★

이해 :
암시 적 (자동) 트랜잭션 : 명백한 시작 및 종료가 없으며 삽입, 업데이트, 삭제와 같이 자동으로 제출 될 수있는
트랜잭션입니다. 명시 적 트랜잭션 : 명백한 시작 및 종료

명시 적 트랜잭션 사용 : ① 오픈
트랜잭션
세트 autocommit = 0;
시작 트랜잭션; # 생략 가능

② 논리적 SQL 문 세트 작성
참고 : SQL 문은 삽입, 업데이트 및 삭제를 지원합니다.

롤백 지점 설정 :
저장 점 롤백 지점 이름;

③ 트랜잭션 종료
제출 : 커밋,
롤백 : 롤백,
지정된 위치로 롤백 : 롤백 롤백으로 롤백,

네, 동시 트랜잭션

  1. 서비스의 동시성 문제는 어떻게 발생합니까?
    여러 트랜잭션이 동일한 데이터베이스의 동일한 데이터에서 동시에 작동하는 경우
  2. 동시성 문제는 무엇입니까?

더티 읽기 : 트랜잭션이 아직 제출되지 않은 다른 문제를 읽고 다른 트랜잭션을 읽습니다. "업데이트"데이터
를 반복 할 수 없습니다. 트랜잭션을 여러 번 읽었으며 결과가 동일한
팬텀 읽기가 아닙니다. 트랜잭션이 다른 것을 읽습니다. 아직 데이터를 커밋했지만 읽은 것은 다른 트랜잭션에 의해 "삽입 된"데이터입니다.

  1. 동시성 문제 해결 방법
    격리 수준을 설정하여 동시성 문제 해결
  2. 격리 수준
    여기에 사진 설명 삽입

추천

출처blog.csdn.net/qq_43518425/article/details/113787179