안녕하세요,

쿼리 실행 관련해 궁금한 것이 있어 질문드립니다.


동일한 쿼리를 응용프로그램과 SQL Management 에서 실행하였는데 응용 프로그램에서는 Timeout Error 가 발생합니다.

무엇이 문제인지 궁금합니다.


자세한 상황은 아래와 같습니다.

현재 응용프로그램에서 Select 쿼리를 사용합니다.

응용 프로그램에서 Select 쿼리를 SqlDataAdapter 클래스의 객체를 생성할 때 사용해 데이터를 받아와 데이터 테이블에 담습니다.

코드는 아래와 같습니다.

string query = "Select A from B";

DataTable table = new DataTable();


using (SqlDataAdapter adapter  = new SqlDataAdapter(this.query))

{

adapter.Fill(table);

}


그런데 Fill 을 수행하는 과정에서 Timeout Error 가 간헐적으로(꽤 자주) 발생합니다.

쿼리의 문제이거나 DB 성능의 문제인가 싶어서 SQL Management 에서 직접 동일한 쿼리를 실행해보았는데

이 때는 큰 시간의 부하 없이 정상적으로 작동하였습니다.


동일한 쿼리의 실행인데 응용프로그램에서만 문제가 발생하는 것은 응용프로그램에 문제가 있는걸까요?


추가로 에러 로그에 남은 Fill 이후의 진행을 붙입니다.

------------------------------------------------------------------------------------------------------------------------------------------------

System.Data.SqlClient.SqlException: Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.

   at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)

   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)

   at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)

   at System.Data.SqlClient.SqlDataReader.ConsumeMetaData()

   at System.Data.SqlClient.SqlDataReader.get_MetaData()

   at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)

   at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)

   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)

   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)

   at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)

   at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)

   at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)

   at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)

   at System.Data.Common.DbDataAdapter.Fill(DataTable[] dataTables, Int32 startRecord, Int32 maxRecords, IDbCommand command, CommandBehavior behavior)

   at System.Data.Common.DbDataAdapter.Fill(DataTable dataTable)

-----------------------------------------------------------------------------------------------------------------------


SqlDataAdapter 클래스에 대해 잘 아시거나 추측되는 문제가 있어보이시면 답글 부탁드립니다.

No. Subject Author Date Views
Notice 2023년 1월 - SQLER의 업데이트 강좌 리스트 코난(김대우) 2023.01.02 2148
» 응용프로그램과 SQL Management 에서의 쿼리 실행 차이 [2] 울어욥 2020.08.20 469
10628 각 컬럼 별 중복된 컬럼 카운트 하는 쿼리를 어떻게 짜야할까요? 두루미 2020.08.14 408
10627 갑작스런 Timeout 에러 관련해 질문드립니다. [1] 울어욥 2020.08.05 564
10626 Lock, 트랜잭션에 관련하여 질문이 있습니다. [2] 울어욥 2020.08.05 681
10625 bcp 로 생성된 파일을 복원하기 질문입니다. [1] 희망나라 2020.07.26 527
10624 학생별 연속된 년도,학기의 수를 구하고 싶습니다.. [2] 개발자혁이 2020.07.22 723
10623 쿼리 결과를 서버로 올릴때 질문입니다. [2] 희망나라 2020.07.20 496
10622 차등 백업이 풀백업 이후 한번만 진행되는 현상 [1] 레몽 2020.07.20 526
10621 CONVERT 함수 문의드립니다. [5] 초보SQL러 2020.07.20 483
10620 테이블에서 여러가지 조건 검색 질문 좀 할게요 [3] 엘리사 2020.07.17 495
10619 저기요...sql비교연산자에서요.... ☞☜ [1] 김포천재 2020.07.16 500
10618 테이블상 동일한 여러개의 로우에 조건을 검색하여 데이터를 찾을수있을까요? [1] 뽀구 2020.07.15 388
10617 중복시간을 제외한 시간의 합을 구할수있을까요? [7] 톰슨 2020.07.14 764
10616 SQL 서버 연결 [1] 망태기군 2020.07.13 886
10615 SQL 특정 시간 날짜 Sum 문의 입니다. [1] 핸젤루 2020.07.07 653
10614 쿼리 질문합니다... 병든토끼 2020.07.07 357
10613 db 백업? 이중화? 질문 [2] 하이욧 2020.07.06 485
10612 인덱스를 위한 교재 추천 부탁 드립니다. [2] 대두개발자 2020.06.29 616
10611 2개의 테이블을 union all 로 조회 후 합치고 싶습니다. [2] 초보SQL러 2020.06.25 467
10610 사용자 이(가) 로그인하지 못했습니다. 원인: 명시적으로 지정된 데이터베이스를 열지 못했습니다. 마징고 2020.06.24 499





XE Login