with (nolock) 란?

DATABASE/SQLServer 2008. 7. 8. 18:40
SQL Server의 기본 격리 수준(isolation level)은 read committed 입니다.
그래서 데이터를 읽을 때는 공유 잠금이 유지됩니다.
그러므로, 쉽게 설명하자면 SELECT문이 실행 중인 동안에
같은 row혹은 table에 insert나 update하는 작업은 block됩니다.
거꾸로 같은 row, data page 혹은 테이블에 데이터를 insert, update하는 동안 SELECT문은 block되게 됩니다. 이렇게 되면 데이터베이스 성능이 현저히 떨어지게 됩니다.
그러므로 일반적으로 단순 조회 쿼리에는 with (nolock)문을 추가하여 사용합니다.

- 사용법-
SELECT  * FROM dbo.Jobs with(nolock)
WHERE...

'DATABASE > SQLServer' 카테고리의 다른 글

카탈로그내에서 특정 컬럼을 참조하는 SP조회  (0) 2008.11.13
[MSSQL]테이블 소유자 변경하기  (0) 2008.08.20
MSSQL 괜찮은 명령어들  (0) 2008.07.30
Trigger  (0) 2008.07.30
SET IDENTITY_INSERT  (0) 2008.07.09
with (nolock) 란?  (0) 2008.07.08
tags : ,
Trackbacks 0 : Comments 0

Write a comment