한국어

EDPS

MSSQL에서 SELECT 시에 WITH (NOLOCK)

조회 수 79 추천 수 0 2018.07.20 09:15:26

MSSQL에서 SELECT 시에 WITH (NOLOCK) 을 주면 공유잠금을 걸지 않고 바로 조회를 한다.

 

MSSQL은 기본적으로 SELECT 시에 공유잠금이 걸린다. 즉, SELECT 문이 수행되는 테이블에 대해서 INSERT, UPDATE, DELETE 문이 수행되고 있다면 SELECT문은 선행 작업이 모두 끝날때까지 LOCK이 걸린다. 이때 SELECT 문에 WITH (NOLOCK)을 추가하면 선행작업의 결과와 관계없이 바로 SELECT문이 수행되어서 결과를 반환하게 된다.

 

SELECT * FROM TABLE1 WITH (NOLOCK)

 

SELECT 문장에서 여러 테이블을 조인해서 가져오는 경우 WITH (NOLOCK)을 사용하기 위해서는 모든 테이블에 적어주어야 한다.

 

 

프로시저 내에서 사용되는 SELECT 문에서 WITH (NOLOCK)을 사용하기 위해서는 각 문장마다 삽입할 필요없이 프로시저 시작 부분에 다음 문장을 추가해 주면 된다.

 

SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED

 

예제)

CREATE PROCEDURE 프로시저명

AS
    SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
    SET NOCOUNT ON;
BEGIN

 

    ...


END

 

 

 

[영어회화] Same here. 저도 동감입니다



출처: http://roadrunner.tistory.com/238 [삶의 조각들]
List of Articles
번호 제목 글쓴이 날짜 조회 수
398 크롬 OS를 설치하기 수텐리 2019-07-11 14
397 직급별 영어명칭 [1] 수텐리 2019-06-04 195
396 PV, UV란 수텐리 2018-08-28 74
395 HTML Error Code 수텐리 2018-08-28 69
394 QA=테스트라는 잘못된 인식이 불러온 오해 (2) 수텐리 2018-08-14 37
393 QA=테스트라는 잘못된 인식이 불러온 오해 (1) 수텐리 2018-08-14 45
392 버전(Version)을 제대로 이해하기 수텐리 2018-07-30 22
» MSSQL에서 SELECT 시에 WITH (NOLOCK) 수텐리 2018-07-20 79
390 노트북 배터리 성능 테스트 WindBoy 2018-06-26 212
389 Random number와 가중치를 고려한 추첨기능 구현하기 file [1] WindBoy 2018-06-05 371
388 개발 표준 정의서 [1] 수텐리 2018-04-20 926
387 푸른세상티엔에스 WindBoy 2017-09-27 75
386 Linux 명령어 관리 WindBoy 2017-08-24 180
385 JSON과 JSONP 차이점 [1] WindBoy 2017-03-29 809
384 XP에서 ie8 res://ieframe.dll/acr_error.htm 오류 file WindBoy 2016-08-26 106
383 HP Officejet Pro 8610 한글화 작업 WindBoy 2016-06-01 1543
382 excel TIP WindBoy 2016-05-10 27
381 PC의 공인인증서 위치 admin 2016-03-14 285
380 마케팅 자료 WindBoy 2015-12-05 30
379 차근차근 제대로 배워보는 인터넷 쇼핑몰 창업 WindBoy 2015-10-25 52