티스토리 뷰
반응형
SELECT 절을 이용해서 특정 row의 컬럼들에 대해 lock를 설정할 수 있음.
lock은 commit이나 rollback를 만날때까지 유요함.
lock row문은 형식은 아래와 같습니다.
------------------------------------------------------
select <lock를 설정할 컬럼리스트>
from 대상테이블
where 조건
for update of <lock를 설정할 컬럼리스트> nowait;
------------------------------------------------------
for update of 뒤에 컬럼명을 명시하지 않으면 해당 row 전체가 lock으로 설정됩니다.
그리고 11g 부터 좋은 lock row 문에 유용한 옵션이 추가되었는데요 바로
SKIP LOCKED 입니다.
즉 for update skip locked 라고 하면 현재 lock이 안걸린 row만 조회해서 lock를 거는
겁니다. 다른 세션에서 이미 lock이 걸린 row를 조회했다면 3초후에 에러가 발생하죠.
이런 경우에 대한 훌륭한 해결책인듯 싶습니다.
특정 값을 업데이트 하는데 DB가 아니 CS에서 처리하는 시간이 오래 걸릴 경우
사용하면 될것 같은데 아직 한번도 사용해 보질 못했네요.
lock은 commit이나 rollback를 만날때까지 유요함.
lock row문은 형식은 아래와 같습니다.
------------------------------------------------------
select <lock를 설정할 컬럼리스트>
from 대상테이블
where 조건
for update of <lock를 설정할 컬럼리스트> nowait;
------------------------------------------------------
for update of 뒤에 컬럼명을 명시하지 않으면 해당 row 전체가 lock으로 설정됩니다.
그리고 11g 부터 좋은 lock row 문에 유용한 옵션이 추가되었는데요 바로
SKIP LOCKED 입니다.
즉 for update skip locked 라고 하면 현재 lock이 안걸린 row만 조회해서 lock를 거는
겁니다. 다른 세션에서 이미 lock이 걸린 row를 조회했다면 3초후에 에러가 발생하죠.
이런 경우에 대한 훌륭한 해결책인듯 싶습니다.
특정 값을 업데이트 하는데 DB가 아니 CS에서 처리하는 시간이 오래 걸릴 경우
사용하면 될것 같은데 아직 한번도 사용해 보질 못했네요.
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 화분벌레
- 고체 향수
- 로니카 BCS
- 오미크론
- Sybase IQ
- 매직 트랙패드2
- JMW 헤어드라이기기
- 유가바이트디비
- 톡토기
- GKRS
- Life Chair
- 홈 오피스
- node.js
- weka
- 빈센트 반 고흐
- 별잉 빛나는 밤
- Pixel Pals
- 별이 빚나는 밤
- 브리다 정수기
- 증권정보포털
- VARIDESK
- 남설 팔찌
- 솔리드 쿨론
- 배당급
- 파나소닉 비데 DL-EH10KWS
- 루미큐브 종류
- 카카오 에드
- 르세라핌
- yugabyteDB
- 코라나 19
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
글 보관함