2012-11-01 5 views
1

SQL Server 테이블에 약 12MB의 이진 데이터를 보관합니다. 이 데이터를 보유하는 열은 varbinary(MAX)입니다.varbinary (MAX) 유형의 대용량 데이터에 대한 SQL Server 시간 초과

서버에서이 바이너리 데이터를 다운로드 할 때 LAN에 있으면 정상입니다. 그러나 데이터를 가져 오려고하는 C# 응용 프로그램에서 SQL Server 시간 초과 오류가 발생합니다.

이 오류가 발생하는 이유는 무엇입니까? 데이터베이스 인스턴스의 원격 쿼리 시간 초과 속성은 기본적으로 600 초입니다. 이것을 0으로 변경해도 도움이되지 않았습니다.

서버에 연결하여 다른 값을 가져올 수 있습니다. 예를 들어, 먼저 동일한 테이블에서 DateTime 값을 확인하여 ~ 12MB의 데이터를 다운로드해야하는지 확인합니다. 내용이 새로운 경우 큰 데이터를 다운로드하는 실행을 시작합니다.

+0

시간 초과 오류가 발생하면 시간이 초과 되었습니까? – GolfWolf

+0

약 35 초 후에이 오류가 발생합니다. – Demir

+0

그래서 600 초의 시간 제한 때문에 확실하지 않습니다. 연결 시간 초과 및 명령 (쿼리 실행) 시간 초과의 두 가지 종류가 있습니다. – GolfWolf

답변

1

연결 시간 초과 란 무엇입니까? RemoteQuery 시간 초과는 서버가 정의하고 태스크에 대한 EXEC에서 완료까지의 경과 시간을 측정하지만 연결 시간 초과는 클라이언트가 정의합니다. 같은 연결 문자열에 절을 추가 시도 :

Connect Timeout=300; 

하고이 오류에 영향을 미치는 경우를 참조하십시오. 여기 는 차연에 대한 몇 가지 정보입니다 : http://msdn.microsoft.com/en-us/library/ms177457%28v=SQL.90%29.aspx http://vyaskn.tripod.com/watch_your_timeouts.htm

+0

연결 문자열의 "연결 시간 초과"매개 변수로 문제를 해결하지 못했습니다. – Demir

관련 문제