Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.03.30;
Скачать: [xml.tar.bz2];

Вниз

ADO   Найти похожие ветки 

 
DimOk   (2008-03-03 09:34) [0]

Доброго времени суток вам мастера. Скажите пожалуйсто как можно ускорить работу ADO. У меня ситуация следующая - таблица имеет около 20 тысяч записей, после того как я пишу ADOTable.Activate := True; сижу и смоотрю в монитор минут пять, при чем на достаточно хорошм железе.... Все настройки компонента по умолчанию, за исключением Connection


 
Сергей М. ©   (2008-03-03 09:44) [1]

Для начала откажись от TADOTable в пользу TADOQuery или TADODataSet.


> за исключением Connection


Покажи дословный текст строки коннекта


 
Sergey13 ©   (2008-03-03 09:45) [2]

> [0] DimOk   (03.03.08 09:34)
> Скажите пожалуйсто как можно ускорить работу ADO

Это винда глючит и/или железо слабое.
Еще вариант (редко встречается) - плохо написана программа, например используются неправильные приемы работы с БД.


 
DimOk   (2008-03-03 09:47) [3]


> Покажи дословный текст строки коннекта

Provider=VFPOLEDB.1;Data Source=D:\SAFE\BEST\BASE\FILINEW\SCLAD;Mode=Share Deny None;Extended Properties="";User ID="";Password="";Mask Password=False;Cache Authentication=False;Encrypt Password=False;Collating Sequence=MACHINE;DSN=""


 
Сергей М. ©   (2008-03-03 09:51) [4]


> DimOk   (03.03.08 09:47) [3]


Коннектом управляешь явно или неявно ?


 
DimOk   (2008-03-03 09:53) [5]


> Коннектом управляешь явно или неявно ?

Я не знаю, явно или нет, но строку подключения я собрал в визарде, а свойство Connected := True установленно в Object Inspector


 
Сергей М. ©   (2008-03-03 09:56) [6]


> DimOk   (03.03.08 09:53) [5]


Значит явно.

И собственно коннект (а не открытие таблицы) при этом происходит мгновенно ?


 
DimOk   (2008-03-03 09:59) [7]


> И собственно коннект (а не открытие таблицы) при этом происходит
> мгновенно ?

Да. А таблица "активизирутся" очень медленно


 
Сергей М. ©   (2008-03-03 10:01) [8]

DataSource-компонент при этом отключен от TADOTable ?


 
DimOk   (2008-03-03 10:03) [9]


> DataSource-компонент при этом отключен от TADOTable ?

Да, его нет вообще - потому что данные не выводятся пользователю...


 
Сергей М. ©   (2008-03-03 10:04) [10]

Приведи значения св-в
Filter, Filtered, IndexName ..


 
Kolan ©   (2008-03-03 10:05) [11]

Так а если через запрос(TADODataSet), ты проверил или нет?


 
DimOk   (2008-03-03 10:06) [12]


> Приведи значения св-в
> Filter, Filtered, IndexName ..

Object Inspector

Filter - пусто
Filtered - False
IndexName - пусто


 
Sergey13 ©   (2008-03-03 10:07) [13]

> [7] DimOk   (03.03.08 09:59)
> Да. А таблица "активизирутся" очень медленно

Подозреваю, что когда будет 40 тысяч записей будет еще медленнее. Переходи на АДОДатаСет и запросы.


 
Kolan ©   (2008-03-03 10:07) [14]

> Подозреваю, что когда будет 40 тысяч записей будет еще медленнее.

Лол, а мы все подозревали, что станет быстрее :)


 
DimOk   (2008-03-03 10:09) [15]


> Переходи на АДОДатаСет и запросы.

Та же песня.... Я уже пробовал, запрос мне не нужен т.к. надо заполднить контрол всеми значениями из одного поля одной таблицы.


 
Сергей М. ©   (2008-03-03 10:09) [16]


> DimOk   (03.03.08 10:06) [12]


Св-во Sort = ?


 
Сергей М. ©   (2008-03-03 10:11) [17]


> надо заполднить контрол всеми значениями из одного поля
> одной таблицы.


Абалдеть !

Ты что, хочешь заставить юзера любоваться десятками тысяч строк одновременнно ?

Да ты садист, батенька)


 
DimOk   (2008-03-03 10:13) [18]


> Да ты садист, батенька)

Да нет :) Это номенклатурый справочник, просто хотелось при формировании отчета конкретизировать его по выбранной позиции..... ну это уже другая песня.. :)


 
Сергей М. ©   (2008-03-03 10:13) [19]


> запрос мне не нужен


При условии


> всеми значениями из одного поля


как раз запрос тебе и нужен !
Причем он д.б. request live и unidirectional


 
DimOk   (2008-03-03 10:14) [20]


> Св-во Sort = ?

Незаданно


 
DimOk   (2008-03-03 10:14) [21]


> Св-во Sort = ?

Незаданно


 
Сергей М. ©   (2008-03-03 10:14) [22]


> Это номенклатурый справочник


Ну и нафига юзеру обозревать его весь, если его интересует десяток-другой записей, отобранных по некоему критерию ?


 
Сергей М. ©   (2008-03-03 10:16) [23]


> хотелось при формировании отчета конкретизировать его по
> выбранной позиции


Для выбора "позиции" существуеьт инкрементальный поиск, которыйЮ, в свою очередь, базируется на запросах.


 
DimOk   (2008-03-03 10:18) [24]


> Ну и нафига юзеру обозревать его весь, если его интересует
> десяток-другой записей, отобранных по некоему критерию ?
>

Возьмем 1С Предприятие. При формирования отчета пользователь может конкретизировать его по номеклатурной позиции и т.п.


 
Сергей М. ©   (2008-03-03 10:19) [25]


> конкретизировать его по выбранной позиции


А сортировать этот список ты как собрался ?
Он же несортированный у тебя !

Ты что же, хочешь заставить юзера искать в этой двадчатитысячной солянке интересующую его строку ? Тогда ты точно садист)


 
DimOk   (2008-03-03 10:20) [26]


> Для выбора "позиции" существуеьт инкрементальный поиск,
> которыйЮ, в свою очередь, базируется на запросах.

У меня не только же позиция выбирается. И запросы есть. Но результат один и тот же - правильный, но очень "медленный".


 
Kolan ©   (2008-03-03 10:21) [27]

> И запросы есть.

Показывай запрос.


 
Сергей М. ©   (2008-03-03 10:21) [28]


> Возьмем 1С Предприятие


Давай возьмем.

И копнув глубже увидим, что там для этой цели используется аналог дельфийского DBComboBox"a, коим у тебя и не пахнет, судя по тобой вышеизложенному.


 
DimOk   (2008-03-03 10:22) [29]


> Ты что же, хочешь заставить юзера искать в этой двадчатитысячной
> солянке интересующую его строку ? Тогда ты точно садист)

Это поможет мне в данной ситуации..... О том удобно или нет речи же не идет...:)


 
Сергей М. ©   (2008-03-03 10:23) [30]


> У меня не только же позиция выбирается


А неважно.

Инкр.поиск на то и придуман, чтобы избавить юзера от необходимости шариться по спискам бешеных размеров.


 
DimOk   (2008-03-03 10:24) [31]


> Показывай запрос.

Запрос достаточно примитивный...
select nnum.mlabel, name.mlabel, kolpost.mkart from mlabel mkart where nnum.mlabel = nnum.mkart


 
Kolan ©   (2008-03-03 10:25) [32]

> Это поможет мне в данной ситуации&#133 О том удобно или
> нет речи же не идет&#133:)

Тебе говорят, что если пльзователь хочет найти вермешель, то и надо делать:
SELECT * FROM <Table>
WHERE FoodType = "вермешель";

а не давать ему все продукты сразу&#133

Переделай сабж с пом запроса, и доложи о результатах(незабудь показать сам запрос).


 
Сергей М. ©   (2008-03-03 10:25) [33]


> том удобно или нет речи же не идет


Ну что ж .. смотри, кума, тебе жить)

Но почему не использован DBLookup/ComboBox - вот это совершенно непонятно и ничем не оправдано.


 
DimOk   (2008-03-03 10:26) [34]


> дельфийского DBComboBox"

С этим компонентом у меня работать не получилось, и я прибег к обычному ComboBoxу


 
Kolan ©   (2008-03-03 10:27) [35]

> select nnum.mlabel, name.mlabel, kolpost.mkart from mlabel
> mkart where nnum.mlabel = nnum.mkart

О, а тут джоин. Как же ты его с пом TADOTAble делал?


 
Сергей М. ©   (2008-03-03 10:28) [36]


> where nnum.mlabel = nnum.mkart


А говоришь нет фильтрации)

Вот тебе и засада !
Индекса-то по полю nnum.mlabel нет и в помине)


 
DimOk   (2008-03-03 10:28) [37]


> Kolan ©   (03.03.08 10:25) [32]

Я не совсем понял вопроса, этот запрос не для поиска информации, а для создания конкретой выборки


 
Kolan ©   (2008-03-03 10:28) [38]

> С этим компонентом у меня работать не получилось, и я прибег
> к обычному ComboBoxу

От тут видимо и тормоза, все дело в долгм выводе в ComboBox&#133


 
Сергей М. ©   (2008-03-03 10:29) [39]


> Как же ты его с пом TADOTAble делал?


Да, оч интересно было бы послушать на эту тему нач-ка транспортного цеха) ..


 
Kolan ©   (2008-03-03 10:29) [40]

> а для создания конкретой выборки

Так вот эту конкретную выборку хорошобы сокращать до минимума&#133 Проблемма конечно именнов отсутствии индекстов или прорисовке на комбобоксе&#133



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

Форум: "Начинающим";
Текущий архив: 2008.03.30;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.54 MB
Время: 0.039 c
2-1204209051
kirillrepin
2008-02-28 17:30
2008.03.30
выборка по полю datetime


2-1204119039
kiberg
2008-02-27 16:30
2008.03.30
количество элементов в перечислении


2-1204289846
Knoob
2008-02-29 15:57
2008.03.30
Какой функцией можно просмотреть каталог


2-1204539788
Student :)
2008-03-03 13:23
2008.03.30
XML и зависание главной формы


2-1204570121
redlord
2008-03-03 21:48
2008.03.30
как добавить строку в книгу ексель





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский