DELETE / ROLLBACK / COMMIT 문

-- DELETE : 테이블의 테이터 삭제
-- DELETE 테이블명
-- WHERE 조건식

DELETE ex3_1
WHERE COL1 = '10';

-- 커밋과 롤백을 테스트하기 위한 데이터 작업
INSERT INTO ex3_1(COL1, COL2, COL3) VALUES('ABC', 10, SYSDATE);
INSERT INTO ex3_1(COL1, COL2, COL3) VALUES('ABC', 20, SYSDATE);
INSERT INTO ex3_1(COL1, COL2, COL3) VALUES('ABC', 30, SYSDATE);
INSERT INTO ex3_1(COL1, COL2, COL3) VALUES('ABC', 40, SYSDATE);
INSERT INTO ex3_1(COL1, COL2, COL3) VALUES('ABC', 50, SYSDATE);

-- 테이블에 임시상태에 존재하는 INSERT, UPDATE, DELETE 작업을 모두 물리적으로 변경
COMMIT;

SELECT *
FROM ex3_1;

DELETE ex3_1; -- 테이블의 모든 데이터 삭제

-- 테이블에 임시상태에 존재하는 INSERT, UPDATE, DELETE 작업을 모두 취소
-- COMMIT 작업실행 후에 최신작업을 취소(원상태로)
ROLLBACK;

-- 테이블에 INSERT, UPDATE, DELETE 작업은 임시상태에서 진행
-- 물리적으로 DOCMALL.DBF 파일에 적용이 안되어 있음

TRUNCATE 문

-- TRUNCATE TABLE 테이블명 : 테이블의 모든 데이터를 삭제시키는 효과. 인식을 못하게 한다
-- DELETE 테이블명 : 테이블의 모든 데이터를 삭제

-- ROLLBACK 해도 복구 안됨
TRUNCATE TABLE ex3_1;

태그:

카테고리:

업데이트:

댓글남기기