-
WITH (NOLOCK)DB 2018. 9. 14. 00:16
WITH (NOLOCK) : 공유잠금을 걸지 않고 바로 조회
*사용이유?
MSSQL의 기본 격리 수준(isolation level)은 read committed 임
SELECT시 수행시 같은 테이블에서 INSERT, DELETE, UPDATE가 되고 있으면 SELECT는 LOCK이 걸린다.
WITH (NOLOCK)을 사용하면 선행작업의 결과와 관계 없이 SELECT문이 실행된다
*예제
쿼리
SELECT * FROM 테이블 WITH (NOLOCK)
프로시저
CREATE PROCEDURE 프로시저명
AS
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
SET NOCOUNT ON;
BEGIN
~~~~
END
그러나 쓰지 말아야 할 경우가 있음 , 정말로! 중요하게 실시간으로 데이터를 볼땐는 쓰지 말아야 할 것이다.
(돈과 관련된? 근대 대부분은 없을 듯)
'DB' 카테고리의 다른 글
Store Procedure란? (0) 2018.09.16 varchar nvarchar 차이점 (0) 2018.09.14 [MSSQL] 테이블 정의서 작성 쿼리 (0) 2018.09.14 [MariaDB] 버전확인 (0) 2018.09.04 강제로 인덱스 태우기, 인덱스 무시하기 (0) 2018.08.25