Показать сообщение отдельно
Старый 01.04.2011, 00:40   #7  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
Судя по "...A.CREATEDDATE,A.CREATEDTIME..." версия ниже 5.0.

Согласен с DSPIC
Цитата:
Сообщение от egorych
... сортировку по индексу. Есс-но это очень долго
Не вижу тут ничего естественного. Сортировка по индексу должна работать быстро.

"OPTION(FAST 1)" у вас на сервер уходит?

Хм. В 4.0 наблюдаю странную вещь. Там на форме 2 источника данных. Оба по таблице SysDataBaseLog. Связи нет. Фильтр на запрос накладывается в методах источника данных.

В результате уходят два запроса.

"
SELECT A.USERNAME,A.DESCRIPTION,A.LOGTYPE,A.TABLE_,A.LOGRECID,A.CREATEDDATE,A.CREATEDTIME,A.CREATEDBY,A.CREATEDTRANSACTIONID,A.RECVERSION,A.RECID,A.DATA
FROM SYSDATABASELOG A WITH( NOLOCK)
WHERE ((DATAAREAID=?)
AND ((TABLE_=?)
AND (LOGRECID=?)))
ORDER BY A.DATAAREAID,A.TABLE_,A.LOGRECID,A.CREATEDDATE,A.CREATEDTIME OPTION(FAST 1)
"
Выборка по компании, таблице и коду записи. Запрос может венуть много записей по модификации конкретной записи в таблице, но, в общем случае скажем так, умеренно.

"
SELECT A.USERNAME,A.DESCRIPTION,A.LOGTYPE,A.TABLE_,A.LOGRECID,A.CREATEDDATE,A.CREATEDTIME,A.CREATEDBY,A.CREATEDTRANSACTIONID,A.RECVERSION,A.RECID,A.DATA
FROM SYSDATABASELOG A WITH( NOLOCK)
WHERE (DATAAREAID=?)
ORDER BY A.DATAAREAID,A.TABLE_,A.LOGRECID,A.CREATEDDATE,A.CREATEDTIME OPTION(FAST 1)
"
А вот этим запросом выбираются все данные из таблицы журнала в рамках конкретной компании. Если данных в таблице много (чего можно ожидать), то выборка будет отрабатывать долго и вполне может объяснять торможение формы.

Осталось понять как они этого добились.
__________________
С уважением,
glibs®