У меня есть запрос, который я выполняю из приложения .NET в базу данных SQL Server, и кажется, что он занимает довольно много времени (5+ минут). Я создал тестовое приложение в C #, чтобы попытаться увидеть, что говорит так долго (запрос должен вернуться быстро).
Поскольку я восстанавливал запрос, добавляя элементы, чтобы увидеть, какая часть занимала так много времени, я закончил реконструкцию запроса практически дословно, где единственной разницей были пробелы в исходном запросе и разница в капитализации. Эта разница возвращала результат примерно через 100 миллисекунд.
Кто-нибудь видел это раньше? Мне интересно, есть ли службы на нашем сервере (поскольку у коллеги есть такая же проблема) или на наших компьютерах.
Заранее спасибо за любую помощь в этом.
Пример кода ниже (Разница в первой строке запроса в конце (fk_source и fk _Source):
//Original
OleDbCommand comm = new OleDbCommand("select min(ctc.serial_no) as MIN_INTERVAL from countstypecode ctc, source s, countstype ct, counts c where ct.value_id=c.value_id and s.c_id=ct.fk_source and " +
"ct.timeinterval=ctc.typename and ct.timeinterval in ('15min','1h','1day') and c.time_stamp >= CONVERT(datetime,'01-01-2008',105) and c.time_stamp < " +
"CONVERT(datetime,'01-01-2009',105) and s.c_id = '27038dbb19ed93db011a315297df3b7a'", dbConn);
//Rebuilt
OleDbCommand comm = new OleDbCommand("select min(ctc.serial_no) as MIN_INTERVAL from countstypecode ctc, source s, countstype ct, counts c where ct.value_id=c.value_id and s.c_id=ct.fk_Source and " +
"ct.timeinterval=ctc.typename and ct.timeinterval in ('15min','1h','1day') and c.time_stamp >= CONVERT(datetime,'01-01-2008',105) and c.time_stamp < " +
"CONVERT(datetime,'01-01-2009',105) and s.c_id='27038dbb19ed93db011a315297df3b7a'", dbConn);