2016-08-18 3 views
3

저장 프로 시저 내에서 실행할 특정 SQL 쿼리에 대해 Timeout 값을 설정하려고합니다. 특정 쿼리에 대한 제한 시간 값을 설정할 수 있습니까?특정 SQL 쿼리에 대해 시간 초과를 설정하는 방법은 무엇입니까?

+1

.net 또는 java 대신에 sql을 사용하려고하는 이유 – Mani

+0

SQL Server에서 쿼리 실행을 중지하지 않으므로 연결을 수행하는 클라이언트의 시간 제한을 설정해야합니다. SSMS라면'sp_configure'를 사용할 수 있습니다. – Petaflop

+0

프런트 엔드에서 .Net을 사용하고 있으며 SqlCommand의 옵션으로 command.CommandTimeout = 10000과 같은 시간 제한을 설정할 수 있습니다. @Mani –

답변

1

쿼리 시간 제한 (RPC 또는 일괄 처리)을 적용하는 것은 SQL Server가 아닌 클라이언트 API입니다. 따라서 저장 프로 시저에 여러 문이 포함되어있는 경우 클라이언트 명령 시간 제한을보다 세부적인 수준으로 설정할 수 없습니다. 원하는 쿼리가 클라이언트에 의해 개별적으로 실행되도록 proc을 분할하고 해당 명령에 대해 다른 시간 초과를 지정해야합니다.

제한 시간을 설정하는 방법은 클라이언트 API에 따라 다릅니다. .NET의 경우 SqlCommand.CommandTimeout 속성입니다.

+0

proc에 하나의 질의 만 포함되었다고 가정하고 그 proc에 대한 시간 초과를 지정하는 방법은 무엇입니까? 프론트 엔드에서 .Net/java ... SqlCommand 같은가요? @Dan Guzman –

+0

'.Net SqlCommand'의'CommandTimeout' 속성은 타임 아웃을 제어합니다. 자바에서는 드라이버에 의존한다고 생각합니다 (예 :'setQueryTimeout()'메소드 지원). –

+0

Thanks @ Dan Guzman –

관련 문제