본문 바로가기

Transaction 의 이해

database by 낼스 2019. 8. 14.
    # Transaction 의 이해
        1. Transaction은 업무, 처리 등의 의미입니다.
           어떤 질의(SQL문)을 DBMS에 처리하도록 요청을하고 그것이 완료된 상태까지가 하나의 
           Transaction입니다.
           아침 식사를 한다고 생각을 해보면 좋겠습니다.
                철수 : 밥주세요.                (질의 처리를 시작합니다.)
                엄마 : 여기 밥있다 밥 먹으렴.
                철수 : ( 밥을 맞있게 먹는다. )
                엄마 : 철수 니가 설거지좀 하렴
                철수 : ( 설거지를 끝냈다.)      (질의 처리를 종료합니다.)
           인간이 할 수 있는 행위를 예를 들었지만 Database에대한 질의 처리도 인간이 하는것입니다.
           이렇게 생각을 한다면 어떤 처리의 시작 부터 끝까지....
           어떤 일이 트랜잭션의 의미가 아닐까 생각을 해봅니다.

           BEGIN;
               SQL문을 기술 합니다.
               (지금부터 밥먹고, 설거지하고, 좀 자다가, 친구 만나러 가야지.....꿈나라.)
           COMMIT;

           DB에서 보통 시작을 할경우 Begin이라는 구문을 사용하고 지금까지의 처리를 DB에 반영 시켜라
           이럴때는 Commit이라는 문장으로 DBMS에 Transation은 여기까지다 이렇게 알려 주는 겁니다.
           멍청해서 어디부터 시작이고 어디까지가 끝인지를 알 수가 없는 컴퓨터져.. 흑흑 
           똑똑한 여러분이 해주셔야 합니다.

        2. Transaction을 이용하면 유용하다. ( 롤백이 있어서 유용하다.)
           그럼 여기까지한거 모두 물러.. 제가 놀음을 했다고 치면 놀음을 하다가 돈을 다 잃었어요..
           이때 나 지금까지한거 다 취소 시키구 원래대루 해줘 하는 명령이 Rollback이라는 명령어입니다.
           인생에서 롤백을 할 수 있음 얼마나 좋을까여. 평온한 어머니 품안으로 돌아갈 수 있는 
           어린 시절로 롤백 시킬 수 있으면 참 좋을것두 같은데요.. 그럼...
        3. Transaction은 위험하다.  ( 롤백이 있어 위험하다.)
           다 처리 해놓았는데.. 바부 처럼 롤백을해버리면 다 날라가는거져.. 후후..
           지금까지 돈 번거 다 날리고 처음부터 다시해야 하니까여 .. 군대 다시 가라면 죽기보다 
           싫은거. 이런가랑 비슷한거죠..추억.. 추억 군대의 추억.. 

'database' 카테고리의 다른 글

mysql 말아먹었을경우 root 권한 재부여  (0) 2020.10.06
SQL 이란 ?  (0) 2019.08.13
Oracle Analytic Functions 누적합계  (0) 2019.08.12
Oracle Analysis Function  (0) 2019.08.07
PostgresQL  (0) 2019.07.29

댓글