수색…


비고

트랜잭션은 하나 이상의 단계를 포함하는 논리적 작업 단위이며, 각 단계는 트랜잭션이 데이터베이스에 커밋하도록 성공적으로 완료해야합니다. 오류가 있으면 모든 데이터 수정 내용이 지워지고 데이터베이스는 트랜잭션 시작시 초기 상태로 롤백됩니다.

단순 거래

BEGIN TRANSACTION
    INSERT INTO DeletedEmployees(EmployeeID, DateDeleted, User)
        (SELECT 123, GetDate(), CURRENT_USER);
    DELETE FROM Employees WHERE EmployeeID = 123;
COMMIT TRANSACTION

롤백 거래

트랜잭션 코드에서 실패한 항목을 실행 취소하려면 트랜잭션을 롤백 할 수 있습니다.

BEGIN TRY
    BEGIN TRANSACTION
        INSERT INTO Users(ID, Name, Age)
        VALUES(1, 'Bob', 24)
        
        DELETE FROM Users WHERE Name = 'Todd'
   COMMIT TRANSACTION
END TRY
BEGIN CATCH
   ROLLBACK TRANSACTION
END CATCH


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow