SQL 쿼리 조회문을 프로시저로 작성하여
C#에서 호출해서 그리드에 바인딩하는데...이상하네요.
MS-SQL ManageMent Studio에서는 프로시저 궈리문을 실행해보면...
전체조회하면...1초이내...바로 조회되는데...총1200건정도 조회되는데..
프로그램에서..조회하면...한세월이네요...
데이터는 똑같은데...
디버깅해보면...데이터셋으로 가져오는 시간이..1분넘게 걸리네요...
이런경우..머가 문제일까요?.....이건..쿼리 튜닝도 아니고..
네트워크..문제?? 그러면...SQL매니지먼트스튜디오에서도..느려야하지 않은지?
넘..속도차가 나는데..왜그럴까요? 이해가 안가네요..
아시는분..없으신가요?
시간을 재보니..
1. MS-SQL Management Studio 에서 쿼리의 경우
: 1초 이내로 데이터 조회됨.
2.C# Application에서 데이터 가져오는 경우
: 2분 이상되야 데이터 조회됨.
상기 똑같은 쿼리인데...이렇게 시간차이가 발생하는 이유를 모르겠네요.
혹시 데이터베이스에서..Aplication 데이터 제한이라든지.. 설정같은거 있나요?
Comment 3
-
이재학_302349
2013.06.11 15:26
-
줄리
2013.06.11 16:18
답변 감사합니다.
같은 프로시져를 실행한 결과 입니다..
근데..지금 몇시간 지난후 다시 둘다 실행해보니..이젠 빠르게 나옵니다...ㅋㅋ 머지..
여전히..ms-sql 매니지스튜디오는 1초내로 데이터 나오고,
c# 어플리케이션에서는 이전에 2분넘게 걸리던게..3초내로 나옵니다....
도대체...DB요넘이...데이터셋을 왜 빨리 안주고..어떤때는 한참만에 줄까요? 이해불가네요..
ms-sql이 이상한건지..참..
-
쓸만한게없네(윤선식)
2013.06.11 19:22
Profiler 실행해서 확인해 보는 것이 가장 확실한 방법이긴 합니다.
혹 .Net Framework 버전이 어떻게 되나요? 버전에 따라 설정값이 다른 부분이 영향을 주기도 합니다.
아니면 다음 부분 확인해 보세요...
http://www.sommarskog.se/query-plan-mysteries.html
어쨌든... SQL Server 자체는 죄가 없습니다. 어떻게 되었든 그렇게 하라고 해서 그대로 했을 것 같네요. ㅋ.
똑같지 않기 때문에 시간차이가 발생하는 것입니다.
질문하신 내용으로 정보가 부족하여 답변이 힘들겠네요.
일단 저장 프로시저로 만들어서 해보세요.
성능이 비슷하게는 나올꺼에요.