database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
ㆍMS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MS-SQL Q&A 5835 게시물 읽기
No. 5835
DB LOCK 관련..
작성자
초보
작성일
2011-01-27 11:50
조회수
6,094

안녕하세요.

현재 MFC로 간단한 프로그램을 개발 하였는데요..

특정 Table에서 FLAG 값이 'N' 인 것을 가져와서 프로그램 내부적으로 처리를 한 후

처리한 ROW를 'Y'로 Update 하는데요.. (ODBC API 이용)

약 50만건 정도를 처리 한 후  5000건 정도가 잘못 되어 다시 처리해야 하는 상황이 발생하였습니다.

그래서 프로그램 종료 후 재 전송 할 Data의 Flag 값을 'N'으로  Update 하고 프로그램을 실행 하니...

LOCK이 걸려 Update 부분에서 멈춰 버리더라고요.. (프로그램은 수정 한 것이 없습니다. )

그래서 과거 질문 사항들을 확인하다 보니 SELECT * FROM TABLE(NOLOCK) WHERE FLAG = 'N' 으로

(NOLOCK) 부분을 추가해서 하면 된다고 하더라고요...

제가 궁금한 것은....

왜 갑자기 LOCK이 걸렸는지가 궁금하구요...

(질문 내용으로 정확한 원인을 알 수 없다면... 원인을 찾아 보는 방법이나, 필요한 자료를 요청하시면 올려드리겠습니다.)

(NOLOCK) 이외의 방법이 있는지....

그리고 (NOLOCK)을 사용할 경우 DB에 별 다른 문제가 발생하지 않는지...

답변 부탁드리겠습니다.

감사합니다.

[Top]
No.
제목
작성자
작성일
조회
5839트리거 에러좀 봐주세요 [1]
심규홍
2011-02-09
5807
5838최근 5년치 가져오기
ㅅㅅㅅ
2011-02-01
5663
5836백업 및 복원 작업 관련 문의 [2]
최지훈
2011-01-29
5865
5835DB LOCK 관련..
초보
2011-01-27
6094
5834프로시저 변수 값 설정시.. [1]
최경환
2011-01-27
5874
5832합계테이블 관련 업데이트 알고리즘 질문
정신없이
2011-01-26
5564
5830그룹에 그룹의 카운트?? [1]
김동욱
2011-01-25
5737
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.021초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다