0
저장 프로 시저의 트랜잭션이 다른 사용자가 테이블을 업데이트하지 못하도록 잠금을 설정합니까?저장 프로 시저 (잠금/롤백)의 mysql 트랜잭션
도 명시 적으로 롤백 논리에 넣을 필요가 없으며 커밋 명령에 도달하지 않았기 때문에 오류가 발생하면 트랜잭션이 자동으로 롤백됩니다.
저장 프로 시저의 트랜잭션이 다른 사용자가 테이블을 업데이트하지 못하도록 잠금을 설정합니까?저장 프로 시저 (잠금/롤백)의 mysql 트랜잭션
도 명시 적으로 롤백 논리에 넣을 필요가 없으며 커밋 명령에 도달하지 않았기 때문에 오류가 발생하면 트랜잭션이 자동으로 롤백됩니다.
저장 프로 시저의 트랜잭션이 다른 사람이 테이블을 업데이트하지 못하도록 잠금을 설정합니까?
당신이 InnoDB
테이블에 일부 DML
을 수행
잠긴 행을 잠근 동일한 트랜잭션 내부에서 수정할 수 있습니다.
명시 적으로 일부 행을 잠 그려면, 문제 : 커밋 또는 트랜잭션을 롤백을 제외하고
SELECT *
FROM table
WHERE condition
FOR UPDATE
는
내가 명시 적으로 넣어해야합니까 행 잠금을 해제 할 다른 방법이 없습니다 롤백 논리를 사용하거나 커밋 명령에 도달하지 않아 오류가 발생하면 트랜잭션이 자동으로 롤백됩니다.
명시 적으로 롤백을 수행해야합니다.
나는 내가 그 트랜잭션의 기간 동안 잠긴 상태를 유지할 것인지 묻고있는 것 같아. 즉, 여러 업데이트가있는 경우 각 업데이트 후에 잠금이 해제되거나 트랜잭션에 있기 때문에 모든 업데이트가 완료된 후에 만 잠금이 해제됩니다. – richs
잠금은 트랜잭션이 끝날 때까지 유지됩니다. 잠금의 전체 지점입니다. :) – Quassnoi