SETAUTOCOMMIT=1;QueryOK,0rowsaffected(0.07sec) 사용자가 MySQL 트랜잭션의 이 동작을 변경하려는 경우 다음을 수행할 수 있습니다."/> SETAUTOCOMMIT=1;QueryOK,0rowsaffected(0.07sec) 사용자가 MySQL 트랜잭션의 이 동작을 변경하려는 경우 다음을 수행할 수 있습니다.">

 >  기사  >  데이터 베이스  >  사용자는 어떻게 새로운 MySQL 트랜잭션을 시작합니까?

사용자는 어떻게 새로운 MySQL 트랜잭션을 시작합니까?

WBOY
WBOY앞으로
2023-08-24 23:41:16837검색

用户如何开始新的 MySQL 事务?

START TRANSACTION 명령을 실행하면 사용자는 새로운 MySQL 트랜잭션을 시작할 수 있습니다. 트랜잭션의 동작은 SQL AUTOCOMMIT 모드에 따라 달라집니다. 기본 모드는 "AUTOCOMMIT ON" 모드입니다. 여기서 각 MySQL 문은 완전한 트랜잭션으로 처리되며 기본적으로 완료 시 커밋됩니다. 아래와 같이 세션 변수 AUTOCOMMIT를 1로 설정하여 시작할 수 있습니다. -

SET AUTOCOMMIT = 1

mysql> SET AUTOCOMMIT = 1;
Query OK, 0 rows affected (0.07 sec)

사용자가 MySQL 트랜잭션의 이 동작을 변경하려는 경우 "AUTOCOMMIT OFF" SQL 모드를 설정할 수 있습니다. 후속 일련의 MySQL 문은 트랜잭션처럼 작동하며 명시적인 COMMIT 문이 실행될 때까지 어떤 활동도 커밋되지 않습니다. 이 모드에서는 새 세션의 첫 번째 실행 가능 문이 암시적으로 새 다중 문 트랜잭션을 시작합니다. 아래와 같이 세션 변수 AUTOCOMMIT를 0으로 설정하여 시작할 수 있습니다. -

SET AUTOCOMMIT = 0

mysql> SET AUTOCOMMIT = 0;
Query OK, 0 rows affected (0.00 sec)

InnoDB의 트랜잭션의 경우 SET AUTOCOMMIT = 0을 사용하지 말고 대신 COMMIT 명령을 사용하여 커밋하세요.

두 SQL 모드 모두 다음과 같이 START TRANSACTION 명령을 사용하여 트랜잭션이 시작됩니다. -

mysql> START TRANSACTION;
Query OK, 0 rows affected (0.00 sec)

실제로 위 쿼리는 트랜잭션이 끝날 때까지 다음 명령문을 단일 작업 단위로 처리해야 함을 MySQL에 알립니다. .

위 내용은 사용자는 어떻게 새로운 MySQL 트랜잭션을 시작합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제