Воросы по базам данных

dndred
Дата: 04.02.2003 19:17:15
Программа на Delphi 6. Работаю через BDE. Система Windows XP.
1) Данные, вносимые в таблицы, физический (в файлах) там появляются только после закрытия программы или таблицы. Если работа завершена некорректно, то данные теряются. CachedUpdates = false.
2) Есть два SQL запроса: Q1(ID, A) и Q2(ID,B). Как из них БЫСТРО составить запрос или таблицу с полями Q3(ID, A, B, A+B)
3) Если во время работы программы выполняется много SQL запросов (примерно 300-400), то в конце-концов появляется сообщение 'Insufficient memory for this operation' (Недостаточно памяти для этой операции). И больше ни один запрос не выполняется, пока программа не будет перезапущена. Памяти достаточно по всем статьям. Запросы простые, просто их много.
Cat2
Дата: 04.02.2003 20:22:26
Было бы легче отвечать, если бы Вы написали, с какой базой данных Вы работаете.

1. Давненько не работал c BDE. Посмотрите, всегда ли у Вас выполняется ApllyUpdates. Всегда ли вызывается Post?

2. select q1.ID, A,B,A+B as AB
from Q1
join Q2 on Q1.ID=Q2.ID

3. Зачем столько маленьких запросов?
Luchkin Dmitry
Дата: 05.02.2003 07:22:47
1. Смотрите в bdeadmin настройку LOCAL SHARE. must be TRUE;
+ метод FlushBuffers у TTable, TQuery etc.
+ http://bdesupport.com

2. согласен с предыдущим оратором

3. после изменений по п.п. 1 имхо должно исчезнуть.