Oracle #6 - TCL

ennakoidaΒ·2023λ…„ 6μ›” 18일
0

Oracle

λͺ©λ‘ 보기
6/13

πŸ“ TCL

TCL (Transaction Control Language) : COMMIT, ROLLBACK, SAVEPOINT

πŸ’‘ Transaction μ΄λž€? ν•œκΊΌλ²ˆμ— μˆ˜ν–‰λ˜μ–΄μ•Ό ν•  μ΅œμ†Œμ˜ μž‘μ—… λ‹¨μœ„λ₯Ό λ§ν•œλ‹€.

COMMIT

COMMIT;

COMMIT은 νŠΈλžœμž­μ…˜ μž‘μ—…μ΄ 정상 μ™„λ£Œ 되면 λ³€κ²½ λ‚΄μš©μ„ 영ꡬ히 μ €μž₯ν•œλ‹€.

λ™μ‹œμ—, 이전에 μž‘μ„±λœ λͺ¨λ“  SAVEPOINTλŠ” μ‚­μ œλœλ‹€.


ROLLBACK

ROLLBACK;

ROLLBACK은 νŠΈλžœμž­μ…˜ μž‘μ—…μ„ λͺ¨λ‘ μ·¨μ†Œν•˜κ³  κ°€μž₯ 졜근 COMMIT μ‹œμ μœΌλ‘œ μ΄λ™ν•˜λŠ” 원상볡ꡬ μž‘μ—…μ΄λ‹€.


SAVEPOINT

SAVEPOINT until3; -- until3 : 이름
ROLLBACK TO until3;

SAVEPOINTλŠ” 뒀에 savepoint 이름을 μž‘μ„±ν•˜λŠ” ν˜•νƒœλ‘œ μ‚¬μš©ν•œλ‹€.

ν˜„μž¬ νŠΈλžœμž­μ…˜ μž‘μ—… μ‹œμ μ— 이름을 μ§€μ •ν•˜μ—¬ ν•˜λ‚˜μ˜ νŠΈλžœμž­μ…˜ μ•ˆμ—μ„œ ꡬ역을 λ‚˜λˆŒ 수 μžˆλ‹€. 단, SAVEPOINT 후에 COMMIT을 ν•˜λ©΄ SAVEPOINTλŠ” 사라진닀.

ROLLBACK뒀에 TO (savepoint 이름)을 μž‘μ„±ν•˜μ—¬ SAVEPOINT둜 μ§€μ •ν•΄μ£Όμ—ˆλ˜ μœ„μΉ˜λ‘œ 원상볡ꡬ ν•  수 μžˆλ‹€.

0개의 λŒ“κΈ€