update를 치는데 실행결과가 안 나오고 무한로딩이라 이게 무슨 일이지 싶었다.
검색해보니
"해당 테이블의 레코드를 다른 곳에서 잡고 있을 수 있습니다.
예를 들어서 토드와 같은 sql툴에서 업데이트(혹은 삭제)를 하고 커밋을 안한 상태에서, 애플리케이션에서 해당 값을 또 업데이트를 한다면 계속 기다리는 상태입니다.
본인 혹은 다른 자리에서 커밋을 안하고 그 레코드 값을 계속 잡고 있는 경우에 그럴 수 있습니다."
라고 누군가의 댓글을 발견했다.
내 자리에서 커밋했는데..? 싶었지만 커밋을 한 번 더 해보고 실행해도 결과는 똑같이 무한로딩.
혹시나해서 다른 분(내 아이디 빌려드렸던)에게 물어봤더니 update를 치고 커밋을 안 한 거였다.
그래서 내가 update치려던 데이터의 값이 계속 잡혀있어서 무한로딩이 되는 거였다.
다른 분 자리에서 커밋하니까 바-로 해결!
오라클에서는 수정 후에 꼭 커밋!
이럴 일은 잘 없겠지만, 만약 어떤 이유가 있어서 내 상황처럼
같은 데이터의 값을 다룬다면, 내가 커밋했어도 다른 사람 자리에서 커밋했는지 확인~!
'SQL' 카테고리의 다른 글
두 날짜 사이의 날짜 구하기(feat.계층형 쿼리 공부하면 좋다네) (1) | 2022.09.27 |
---|