> 데이터 베이스 > MySQL 튜토리얼 > MySQL 트랜잭션 관리에 대한 간략한 논의(기본)

MySQL 트랜잭션 관리에 대한 간략한 논의(기본)

青灯夜游
풀어 주다: 2019-02-26 10:53:03
앞으로
2533명이 탐색했습니다.

이 기사의 내용은 MySQL 트랜잭션 관리(기본)에 대한 간략한 설명입니다. 필요한 친구가 참고할 수 있기를 바랍니다.

트랜잭션 처리는 데이터베이스 등의 무결성을 유지하여 mysql 작업의 성공 또는 실패를 보장하는 데 사용됩니다(myisam은 트랜잭션을 지원하지 않음)

1. 키워드

  1. 트랜잭션(트랜잭션)

  2. 롤백(롤백)은 지정된 SQL 문을 실행 취소하는 프로세스를 의미합니다.

  3. 커밋(커밋)은 저장되지 않은 SQL 문 결과를 데이터베이스 테이블에 기록하는 것을 의미합니다.

  4. 세이브포인트(savepoint)는 트랜잭션 처리를 의미합니다. (전체 트랜잭션을 롤백하는 것과는 반대로) 롤백을 실행할 수 있도록 설정된 임시 자리 표시자(place-holder)입니다.

2. Rollback

select * from orderitems;
START TRANSACTION;
DELETE FROM orderitems;
select * from orderitems;
ROLLBACK;
select * from orderitems;
로그인 후 복사

을 사용합니다. 두 번째 삭제가 실패했다고 가정하고 트랜잭션 블록의 문을 롤백하고 실행 취소합니다. 예약된 포인트 복잡한 트랜잭션 처리에는 부분 커밋 또는 롤백이 필요할 수 있습니다.

트랜잭션의 일부 롤백을 지원하려면 자리 표시자를 트랜잭션 블록의 적절한 위치에 배치해야 합니다. 이렇게 하면 롤백해야 하는 경우 자리 표시자로 돌아갈 수 있습니다.

이러한 자리 표시자를 보존 지점이라고 합니다. 자리 표시자를 만들려면 다음과 같이 SAVEPOINT를 사용할 수 있습니다.

보존 지점 만들기

START TRANSACTION;
DELETE FROM orderitems where order_num = 20010;
DELETE FROM orders WHERE order_num = 20010;
COMMIT
로그인 후 복사



보존 지점으로 돌아가기

SAVEPOINT delete1
로그인 후 복사
팁:

보존 지점이 많을수록 좋습니다. , 편리하고 유연한 사용, 하지만 그냥 오실 필요는 없습니다! 모든 작업은 적당히 수행됩니다. 보존 포인트 해제

1. 트랜잭션이 완료된 후 보존 포인트가 자동으로 해제됩니다(ROLLBACK 또는 COMMIT 실행). 보존 포인트를 명시적으로 해제

5. 기본적으로 커밋 동작

mysql은 모든 변경 사항을 자동으로 커밋합니다.

2、release savepoint delete1

변경사항을 자동으로 커밋하지 마세요

ROLLBACK TO delete1
로그인 후 복사
위 내용은 이 글의 전체 내용입니다. 모든 분들의 학습에 도움이 되기를 바랍니다. 더 흥미로운 내용을 보려면 PHP 중국어 웹사이트의 관련 튜토리얼 열을 주의 깊게 살펴보세요! ! !

위 내용은 MySQL 트랜잭션 관리에 대한 간략한 논의(기본)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:https://segmentfault.com/a/1190000018282782
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿