2012-07-02 2 views
-1

보기에 테이블과 추가 계산 필드를 추가하려고하는데 EXECUTE를 눌렀을 때부터 5 분이 남았습니다. 이게 정상인가?SQL Server에서보기를 변경하는 데 몇 초가 걸릴까요?

+1

대부분 해당보기를 사용하는 쿼리가 진행 중입니다. –

+0

나는 당신의 대답을 가지고 간다. (그러나 당신은 대답에 넣지 않았다.) ;-). 나는 유일한 사용자이고 서버에 연결된 Access DB를 닫은 다음 코드를 다시 실행하면 즉시 실행됩니다. 감사. – aSystemOverload

+0

문제 없습니다. @ AaronBertrand 's는 어쨌든 더 좋습니다. –

답변

3

sys.dm_exec_requests에서 차단을 확인하십시오. 보기에서 변경 내용을 실행 한 창에서 탭이나 상태 표시 줄에 spid (57 또는 65)가 표시되어야합니다. 이 쿼리를 실행합니다 (SPID가 57이었다 가정) :

SELECT last_wait_type,blocking_session_id 
    FROM sys.dm_exec_requests 
    WHERE session_id = 57; 

기회는, blocking_session_id이 NULL되지 않습니다. 세션이 거기에서 오는 경우에, 당신은 신속하게함으로써 (의 그것 (62)을 반환 가정 해 봅시다) 실행 것을 볼 수 있습니다

DBCC INPUTBUFFER(62); 

아니면 광범위한 블로킹 체인을 가질 수있다, 그래서 당신은 새로운 블로킹 SPID가를 연결 유지 할 수 있습니다 리드 차단기를 추적하기 위해 맨 위 쿼리에 추가하십시오.

리드 차단기를 찾으면 수행 할 작업을 결정할 수 있습니다. 끝내거나 죽이려고 할 수 있습니다. 다시 한 번, 리드 차단기가 session_id라고 가정합니다. 62 :

KILL 62; 

그러나 대부분의 경우 사용자는이를 끝내기를 원할 것입니다.

+0

내 경우에는 내가 필요한 것은 [The Coon]의 대답이었습니다. 침해 Access 데이터베이스를 닫고 즉시 실행되었습니다. 귀하의 매우 상세한 답변을 주셔서 감사합니다, 잘하면 그것은 비슷한 질문을 다른 사람을 도울 것입니다. – aSystemOverload

+0

그래, 이건 그냥 Access를 사용하는 사람들에게 일어난 일이 아닙니다. (특히 Access를 사용하고 있다고 말하지 않았기 때문에) :-) –

+0

내가 Access를 열었 기 때문에 그것이 내가 당신에게 말할 수 있었기 때문에 실현 되었다면, 나는 LOL에게 잔디 법을 물어볼 필요가 없었을 것입니다. 어쨌든 고마워. – aSystemOverload

관련 문제