Форум: "Базы";
Текущий архив: 2002.05.23;
Скачать: [xml.tar.bz2];
ВнизINTERBASE и тормоза Найти похожие ветки
← →
Pavel_S (2002-04-20 16:24) [0]Есть база данных, в которой есть мастер таблица (около 20 тыс. записей) и около 30 detail таблиц с с еще большим количеством информации.
Наблюдаются тормоза при навигации в таблице.
Посоветуйте как лучше оптимизировать базу данных и мой код.
Есть ли смысл сделать к примеру так:
Если у меня на экране нужно отобразить информацию из нужных подчиненных таблиц, то только их и активировать, а другие не трогать ?
← →
evgeg (2002-04-20 20:58) [1]А вы что, TTable используете?
← →
Pavel_S (2002-04-21 08:08) [2]Через sql. ibquery и ibdataset.
← →
Anatoly Podgoretsky (2002-04-21 12:14) [3]"и мой код" в нем поставь where ...
← →
kaif (2002-04-21 14:36) [4]Разумеется, если какая-то информация в данный момент не нужна - лучше ее не запрашивать. Само по себе Master-detail отношение между потомками TDataSet при SQL-ориентированных базах просто переоткрывает подчиненные запросы при каждом перемещении на новую запись в главной таблице.
Еще нужно быть уверенным, что Master-detail отношение опирается на индексированные поля (в подчиненных таблицах есть индексы по master-полю). Но я думаю, это Вы не забыли сделать.
← →
Vasilii (2002-04-25 14:27) [5]У тебя на одной форме 2 или более DBGrid"а подключенные к взаимосвязанным DataSet"ам. Я правильно понял? Если да то на KeyDown в гриде ставь отключение DataSource связанных DataSet"ов, а на KeyUp восстанавливай прежние значения. Получается немного быстрей.
← →
Ura (2002-04-25 14:38) [6]Лучше всего напиши хранимую процедуру. В ней свяжеш все таблицы и определишь связи. На входе будет ID головной таблицы - а на выходе все связанные данные. Пусть СУБД работает... Про индексы не рассказываю и про способы объеденения тоже. Разберешься находу...
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.05.23;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.009 c