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

Вниз

Жутко тупит DataSet на широких таблицах   Найти похожие ветки 

 
shiva502   (2002-06-21 02:58) [0]

Ситуация такая. Есть MS SQL. Делаю выборку из таблицы через TADODataSet. Таблица имеет ~400-500 столбцов. DataSet.Open делается примерно 1 минуту. Пробовал открывать _Recordset (чистый ADO-рекордсет) - все нормально, несколько секунд. А с датасетом тупит.
Расследование показало, что тупилово наступает, когда TDataSet начинает заполнять свои структуры с данными о столбцах таблицы, FieldDefs, то бишь.
Что с этим делать?


 
kaif ©   (2002-06-21 03:43) [1]

А нельзя число столбцов уменьшить?
Какая-то таблица ненормальная...
Что, существуют сущности с 400-500 атрибутами?


 
Dok_3D ©   (2002-06-21 07:56) [2]

Что, существуют сущности с 400-500 атрибутами?
Есть сущности с гораздо большим количеством атрибутов... Хотя согласен, нормальной такую таблицу не назовешь.

2shiva502
А расследование не пыталось установить как с такой таблицей работает ADOQuery ? Иногда качественно построенный запрос очень выручает.


 
shiva502   (2002-06-21 08:57) [3]

2 Dok_3D
да запрос там простой
SELECT * FROM TABLE
...
по другому там нельзя...
Обидно-то то, что Query Analyzer его за 2 секунды делает,
а из проги из-зи TDataSet-а 60 секунд.


 
dimis   (2002-06-21 09:26) [4]

помоему дело в другом
даже с recordset
запрос типа select * from table order by ... будет работать долго
все дело в том, что recordset начинает выдавать данные еще до того так закончилась выборка,и продолжает её выбирать уже в фоновом режиме (из-за этого иногда глючит RecordCount).
а твой dataSet пытается вытащить все данные , а потом их выдать. Покопайся в настройках



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

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

Наверх




Память: 0.47 MB
Время: 0.015 c
1-47450
kalliopiy
2002-07-03 13:46
2002.07.15
Есть ли


3-47206
koty
2002-06-19 02:41
2002.07.15
Управление доступом.


1-47479
Alex_E
2002-07-03 18:16
2002.07.15
Удаление с панели задач лишних окон


4-47897
anod
2002-05-12 00:42
2002.07.15
Запись в реестр через WinAPi


3-47218
Я_Чайник
2002-06-20 06:10
2002.07.15
Дополнить таблицу