Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
ASA9 - NativeDB + VCL FindKey(очень долгий softsearch)
|
|||
|---|---|---|---|
|
#18+
Пишу в эту ветку, так как NativeDB разработан только под ASA и вероятность получения ответа гораздо выше, чем в других ветках. В приложении на C++Builder используется компонент доступа NativeDB. Всё устраивает кроме одной мелочи-очень долго выполняется софт-поиск(позиционирование курсора) на клиенте при использовании метода FindKey(). На датасете с 70000 записей поиск по полю с первичным ключем порядка 5 сек. Причём время поиска пропорционально численному значению поля. На датасете нет LookUp полей и связанных с ним Detail. С другими компонентами доступа такого не наблюдал (BDE,dbExpress,AnyDAC). Как можно ускорить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 17:53 |
|
||
|
ASA9 - NativeDB + VCL FindKey(очень долгий softsearch)
|
|||
|---|---|---|---|
|
#18+
Не надо делать датасеты в семьдесят тысяч записей. Не надо... Клиент никогда, ни при каких условиях не должен работать с более чем сотня записей. --- http://www.rusug.ru] Портал русскоязычной группы пользователей Sybase ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 18:02 |
|
||
|
ASA9 - NativeDB + VCL FindKey(очень долгий softsearch)
|
|||
|---|---|---|---|
|
#18+
никак не ускорите: NativeDB использует серверные курсоры: выборка не тащится на клиента, а подгружается в процессе скрола: так что тормоза будут. Вытаскивайте на клиента только то, что нужно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 18:29 |
|
||
|
ASA9 - NativeDB + VCL FindKey(очень долгий softsearch)
|
|||
|---|---|---|---|
|
#18+
OK. Буду переписывать эту часть в клиенте. Такой датасет только один из 50-ти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 20:38 |
|
||
|
ASA9 - NativeDB + VCL FindKey(очень долгий softsearch)
|
|||
|---|---|---|---|
|
#18+
Рыжий Котникак не ускорите: NativeDB использует серверные курсоры: выборка не тащится на клиента, а подгружается в процессе скрола: так что тормоза будут. Вытаскивайте на клиента только то, что нужно. Неужели используя сервисные курсоры по PK создатели NativeDB не смогли сделать быстрый Findkey? И пусть тащит выборку с сервера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 10:33 |
|
||
|
ASA9 - NativeDB + VCL FindKey(очень долгий softsearch)
|
|||
|---|---|---|---|
|
#18+
Очепятка сервисные=серверные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 10:38 |
|
||
|
ASA9 - NativeDB + VCL FindKey(очень долгий softsearch)
|
|||
|---|---|---|---|
|
#18+
Юрий Андрей Для скрола можно написать SELECT * FROM YourTable - и даже при миллионах записей вы ничего не заметите, так как будут вытаскиваться данные, требуемые для текущего положения бегунка грида. Для поиска же при помощи Findkey нужно перелопатить все данные вашего датасета на клиенте (если я не ошибаюсь), а тут уже все равно как данные попадают клиенту: сразу после открытия датасета или во время скрола... З.Ы. не забывайте, что bandwidth сети не резиновый и когда-нить оно все равно начнет тормозить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 11:09 |
|
||
|
|

start [/forum/topic.php?fid=55&gotonew=1&tid=2012392]: |
0ms |
get settings: |
7ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
36ms |
get topic data: |
10ms |
get first new msg: |
6ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
1ms |
| others: | 220ms |
| total: | 364ms |

| 0 / 0 |
