안녕하세요,

SQL 에 관련해 궁금한 사항이 있어서 질문 드립니다.

아시는 분은 꼭 답변 해주시면 감사하겠습니다.


제가 알기로는 Update, Insert 중 같은 테이블을 Select 시도하면 Lock 이 걸린다고 알고있습니다.

실제로 Begin Tran Update ~ 로 Commit 전의 상태에서

Select 문을 사용했을 때 Lock 이 걸려 Timeout 에러가 발생하는 것 까지 확인하였습니다.

그래서 이 때 Lock 없이 데이터를 보기 위해서는 Select 문에 WITH(NOLOCK) 을 사용하면 되고,

이 또한 테스트로 확인했습니다. ( NOLOCK 사용 시 Update 중에도 Select 되는 것)


그런데 테스트 중 Join 으로 Select 한 테이블은 Lock 이 발생하지 않고 Select 결과가 나타났습니다.

좀 더 자세하게 상황을 설명하면,

A, B : Table

Update A 중

Select From A INNER JOIN B ON A.type = B.type WHERE A.type = 'TEMP'

의 결과가 WITH(NOLOCK) 없이 바로 나왔습니다.


왜 이 경우에는 트랜잭션이 걸리지 않을까요?

위 상황에서 DBCC OPENTRAN 으로 확인했을 때 Update A 로 열린 트랜잭션이 여전히 있었는데 말입니다.


제 생각으로는 Join 도 역시 테이블들을 조회해 join 후 가상의 테이블로 보여주기때문에

테이블 조회하는 과정에서 Lock 이 걸려야 한다고 생각했습니다.


제가 무엇을 놓치고 있는지 알려주시면 감사하겠습니다.


No. Subject Author Date Views
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 38050
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 20666
10643 BCP 입력시 구분자가 내용에 포함된 경우 해결 방법이 있을까요? [1] 강구다.. 2020.09.17 646
10642 ORACLE->MSSQL쿼리 바꾸는데 CONNET BY와 LISTAGG 같이 사용해서 바꾸기가 어렵네요 ㅠ [2] iticdl 2020.09.14 1110
10641 미러링 구성 관련하여 질문 드립니다. 김삐씨 2020.09.07 440
10640 MSSQL 프로시져 SP 질문 드립니다 [2] 아침고기 2020.09.06 706
10639 MSSQL 실행속도 차이 문의드립니다 초봅자 2020.09.04 564
10638 동적 SQL 에서 SP_EXECUTESQL 사용하면서 NVARCHAR(4000) 이상의 파라미터 조형근 2020.09.03 710
10637 @@IDENTITY 관련 질문입니다 [1] 코코 2020.09.03 460
10636 DB용 컴퓨터 [3] 하이욧 2020.09.02 639
10635 실시간에 가까운 DB 서버를 만들어 보고자 합니다. [2] 김삐씨 2020.08.31 613
10634 DB Lock에 대해서 도움 부탁드립니다. [1] 듬직한정자 2020.08.29 549
10633 DecryptSql 복호화 툴 데모버전 말고 구입하신분 있으실까요? [1] 듬직한정자 2020.08.25 466
10632 MSSQl 암호화된 함수 보는법.. 아시는분 있으신가요? [4] 듬직한정자 2020.08.25 1051
10631 급하게 하나 여쭤봅니다(프로시저 관련) [2] 감귤이 2020.08.25 489
10630 두개의 테이블을 조인하면서 ... [3] seyo 2020.08.21 527
10629 응용프로그램과 SQL Management 에서의 쿼리 실행 차이 [2] 울어욥 2020.08.20 528
10628 각 컬럼 별 중복된 컬럼 카운트 하는 쿼리를 어떻게 짜야할까요? 두루미 2020.08.14 466
10627 갑작스런 Timeout 에러 관련해 질문드립니다. [1] 울어욥 2020.08.05 665
» Lock, 트랜잭션에 관련하여 질문이 있습니다. [2] 울어욥 2020.08.05 861
10625 bcp 로 생성된 파일을 복원하기 질문입니다. [1] 희망나라 2020.07.26 583
10624 학생별 연속된 년도,학기의 수를 구하고 싶습니다.. [2] 개발자혁이 2020.07.22 767





XE Login