powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Оптимизация ADO.net
11 сообщений из 11, страница 1 из 1
Оптимизация ADO.net
    #33763414
alex02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подключаюсь к серверу ms SQL 2000 с помощью SqlConnection, строю запрос с помощью SqlDataAdapter, затем генерирую Dataset и отображаю его в TrueDBGrid. Все работает только задержка при выборке составляет 5-8 сек. Мелочь, но неприятно когда нужна оперативность. Скинул запрос в Query Analayzer. Запрос выполняется моментально! Подскажите из за чего происходит задержка, и что можно еще оптимизировать?
...
Рейтинг: 0 / 0
Оптимизация ADO.net
    #33763452
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex02
Подскажите из за чего происходит задержка, и что можно еще оптимизировать?

задержка - например, установка соединения с БД.
оптимизировать - выставить у DataAdapter'а MissingSchemaAction в Error

Код: plaintext
 uid  =  S a

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Оптимизация ADO.net
    #33763528
alex02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не помогло. Может еще будут варианты?
...
Рейтинг: 0 / 0
Оптимизация ADO.net
    #33764094
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex02
еще будут варианты?

а что у вас в запросе?
количество возвращаемых записей?

Код: plaintext
 uid  =  S a

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Оптимизация ADO.net
    #33764196
alex02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Query Analayzer - (310 row(s) affected) за 1 сек. Тот же самый запрос в ADO.net выполняется 9 сек. Не понимаю где и что тормозит.
...
Рейтинг: 0 / 0
Оптимизация ADO.net
    #33764869
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex02
Тот же самый запрос в ADO.net выполняется 9 сек

надо смотреть код, что представляют собой эти 310 записей, выяснять что именно тормозит - воспользоваться профайлером или написать тест самому например как здесь:
http://www.sql.ru/forum/actualthread.aspx?tid=250485#2258685
грубо конечно, но речь идет о 9 секундах.

Код: plaintext
 uid  =  S a

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Оптимизация ADO.net
    #33764931
alex02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в net-е:
Me.SqlDataAdapterOPn.SelectCommand.Parameters("@CardUkey").Value = C1TrueDBGrid2.Columns("Ukey").Text
Me.DataSet151.Clear()
Me.SqlDataAdapterOPn.Fill(Me.DataSet151)

а вот сам запрос:
SELECT n.UKEY, n.CARDUKEY, n.CreateTime, n.UpdateTime, n.kodCl, c.note, n.Qnt, c.EdIzm, n.DepartmentId, n.Sale, n.Ankod, n.Creator, n.omtsInWork,
n.omtsC4Zakaz, n.type
FROM НОРМ_ AS n LEFT OUTER JOIN
Classifier AS c ON n.kodCl = c.kod_full + c.kod
WHERE (n.CARDUKEY = @cardukey)
...
Рейтинг: 0 / 0
Оптимизация ADO.net
    #33765127
alex02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот хронометраж fill:

@CardUkey=1672 - 969 ms
@CardUkey=1664 - 521 ms
@CardUkey=1671 - 938 ms
@CardUkey=1665 - 866 ms
@CardUkey=1666 - 882 ms
@CardUkey=1664 - 208 ms
@CardUkey=1666 - 835 ms
...
Рейтинг: 0 / 0
Оптимизация ADO.net
    #33765147
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А где 9 сек?

Код: plaintext
 uid  =  S a

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Оптимизация ADO.net
    #33765376
alex02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
C запятой накосячил...
Вот хронометраж fill:

@CardUkey=1672 - 9.69 s
@CardUkey=1664 - 5.21 s
@CardUkey=1671 - 9.38 s
@CardUkey=1665 - 8.66 s
@CardUkey=1666 - 8.82 s
@CardUkey=1664 - 2.08 s
@CardUkey=1666 - 8.35 s
...
Рейтинг: 0 / 0
Оптимизация ADO.net
    #33765409
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex02
@CardUkey=1664 - 2.08 s

посмотрите SQL профайлером, что прилетает от вашей программы.
+ надо смотреть план запроса, а это уже в ГФ.

Код: plaintext
 uid  =  S a

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Оптимизация ADO.net
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]