commit / rollback

2023. 9. 5. 16:31웹/백엔드-python

728x90
반응형

SET autocommit = 0;

SET autocommit = 1;

SELECT @@AUTOCOMMIT;

CREATE TABLE emp_tran1 AS
SELECT *
  FROM emp_test;

ALTER TABLE emp_tran1
  ADD CONSTRAINT PRIMARY KEY (emp_no);

CREATE TABLE emp_tran2 AS
SELECT *
  FROM emp_test;
ALTER TABLE emp_tran2
  ADD CONSTRAINT PRIMARY KEY (emp_no);

DELETE FROM emp_tran1;

-- emp_tran2 삭제
DELETE FROM emp_tran2;

-- 삭제 취소
ROLLBACK;




select *
from emp_tran1;

select *
from emp_tran2;



###########################
START TRANSACTION;

-- savepoint A 설정 
SAVEPOINT A;

-- 삭제1 
DELETE FROM EMP_TRAN1 
WHERE SALARY IS NULL;

-- savepoint B 설정 
SAVEPOINT B;

-- 삭제2
DELETE FROM EMP_TRAN1
WHERE EMP_NAME = '맥스웰'
ORDER BY emp_no
LIMIT 1;

-- savepoint B 이후 작업 취소 
ROLLBACK TO SAVEPOINT B;

COMMIT;

SELECT * 
  FROM EMP_TRAN1;
반응형

' > 백엔드-python' 카테고리의 다른 글

객체지향(파이썬)  (0) 2023.11.05
컴퓨터 이해  (0) 2023.11.05
update 문 연습  (0) 2023.09.05
insert 연습  (0) 2023.09.05
Role과 사용자 만들기 / select 연습  (0) 2023.09.05