Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.24;
Скачать: CL | DM;

Вниз

Долго загружаются данные из базы данных   Найти похожие ветки 

 
smalik ©   (2003-06-30 15:35) [0]

Добрый день, Мастерам!

Буржуи прислали прайс 55 МВ в Ассеss"e 500 000 наименований, Используя ADO накатал прогу для склада. Работает все Ок, не считая долгой загрузки данных из базы по сетке. На 100 М/бит грузится 13 секунд выбор 1 позиции из базы. Наименование выбираю Select"ом. Как возможно ускорить загрузку данных, без улучшения железяк? Возможно есть какие-нибудь хитрости, более бысрый выбор, быстрее Select"а, или ещче что-нибудь.

Всем заранее спасибо! за любую полезную информацию.


 
Карелин Артем ©   (2003-06-30 15:37) [1]

Было бы неплохо указать примерные запросы. А если select не простой, а с Where, то индексы возможно дадут счастие.


 
smalik ©   (2003-06-30 15:39) [2]

Артем!

MainForm. AdoDataSet3.CommandText := "select * from price where Номер = """+ Edit1.Text+"""";


 
Семен Сорокин ©   (2003-06-30 15:41) [3]

smalik © (30.06.03 15:39)
а Номер цифровым никак не сделать + индекс по нему?


 
sniknik ©   (2003-06-30 15:45) [4]

индекс по Номер-у очень поможет, если он там уже есть то гдето глюк. (не может одну позицию так долго выбирать)

а если его там нет то 13 секунд на полный перебор 500 000 зап. - нормально.


 
smalik ©   (2003-06-30 15:46) [5]

Семен!

На тему цифровых номеров к сожалению не получится, буквы однозначно присутствуют. Номера типа А0000000000, есть и другие маркировки. А на тему индексов, можно более подробно?


 
Карелин Артем ©   (2003-06-30 15:47) [6]

Индекс по полю Номер. Однозначно. У меня с индексом из таблицы на 10 000 000 записи быстрее секунды выбираются. Только база не Акцесса.


 
Семен Сорокин ©   (2003-06-30 15:50) [7]

smalik © (30.06.03 15:46)
В Access"e в Design"е для поля "Номер" таблы price поставь Indexed = true
да и посмотри там утилиты есть в Tools->Analyze по оптимизации


 
smalik ©   (2003-06-30 15:59) [8]

Мужики, МАСТЕРА!

Всем СПАСИБО, к сожелению нет милисекундомера, засветить используемое время даже на 10 М/битах.



 
sniknik ©   (2003-06-30 16:01) [9]

добавка к
Семен Сорокин © (30.06.03 15:50)

попробуй ее сначала ключом сделать (если все неповторяющиеся, получится), по ключу поиск быстрее.
и (мало ли чего прислали), если база старая Access 97 то преобразуй к 2000-му.


 
Edward   (2003-07-01 09:55) [10]

Можно еще попробовать:

ADODataSet1.CursorLocation := clUseServer;
ADODataSet1.CursorType := ctOpenForwardOnly;



Страницы: 1 вся ветка

Текущий архив: 2003.07.24;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.02 c
4-78195
Zevsus
2003-05-22 11:33
2003.07.24
отловить WM_SPOOLERSTATUS


14-78062
Aga
2003-07-05 13:13
2003.07.24
Ура!!


11-77814
IZVER
2002-11-05 17:01
2003.07.24
локализация KOL-приложений


3-77728
Sceptik
2003-06-30 20:28
2003.07.24
Как сделать такой запрос:


3-77802
zep
2003-07-02 23:24
2003.07.24
работа с Alias