Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > Вопросы по Query


Автор: Maiwend 24.5.2006, 14:48
Суть
Пишу программу БД с кучей разнообразной информации относящейся к одному объекту.
Сделал начальный вариант структуры БД, получилось 15 табличек
Таблици наваял в Paradox через Database Desktop

Проблемы:
Взял Query1 поставил UpdateSQL1, подключил DBGrid
SELECT * FROM t_n
Данные в DBGrid поступаю
CachedUpdates компонента TQuery равно true.
свойству UpdateObject = UpdateSQL1
В UpdateSQL1 вроде бы настроил как должно

Изменяю в DBGrid1 данные, а они не запоминаюстся.

Как правильно делать?  

Автор: Kesh 24.5.2006, 15:03
Поставь CachedUpdates в false

Автор: Maiwend 24.5.2006, 15:42
Если так сделать то не редактируется. 

Автор: Vas 25.5.2006, 10:18
http://articles.org.ru/lesson/les7.php
http://www.citforum.ru/programming/application/data_acc5.shtml 

Автор: Maiwend 25.5.2006, 10:39
Vas

Сейчас прочту smile))

У меня в данный момент как все работает
Данные выборки редактируются, а вот как их зафиксировать в таблицу не врубаюсь. 

Автор: Vas 25.5.2006, 12:46
Цитата(Maiwend @  25.5.2006,  10:39 Найти цитируемый пост)
Данные выборки редактируются, а вот как их зафиксировать в таблицу не врубаюсь.  

Если не изменяет память то 
ApplyUpdates - сохраняет в БД данные из кэша;
CancelUpdates - отменяет сделанные изменения (ну как бы просто очищает кэш).
Я правда не даю пользователю редактировать данные  в таблице, поэтому с TUpdateSQL в практике не сталкиваюсь  smile  

Автор: Maiwend 25.5.2006, 13:40
Цитата(Vas @  25.5.2006,  12:46 Найти цитируемый пост)
Если не изменяет память то 
ApplyUpdates - сохраняет в БД данные из кэша;
CancelUpdates - отменяет сделанные изменения (ну как бы просто очищает кэш).
Я правда не даю пользователю редактировать данные  в таблице, поэтому с TUpdateSQL в практике не сталкиваюсь    



Вот, то что нужно было - это ApplyUpdates 
А пользователи у тебя какие-либо данные вносят в базу?

У меня пользователь основной будет кучу данных заносить, оператор, далее я данные оптимизировал получилось 15 таблиц пока, может будет больше.

Есть у меня тех процессы(ТП) в которые входят и разные работы(Р) и разные материалы(М) и число это всегда варьируется
То есть пример:
ТП1 - Р1, Р2, Р3, Р4, Р5
ТП2 - Р2, Р3, Р5, М1
ТП3 - Р1, Р6, Р7, Р8, Р9, М2, М3, М4, М5
и таких дофига у каждого Р и М есть еще свое количество (объем)

Эти все ТП и Р и М будет забивать оператор
Я сделал такую структуру

ТП-таблица
ID
Название
Код

Р-таблица
ID
Название
Код

М-таблица
ID
Название
Код

Р-объем-таблица
ID
ID-ТП
ID-P
Объем

М-объем-таблица
ID
ID-ТП
ID-М
Объем

Связь по ID

Это только верхушка айзберга, но принцип в остальном тотже.
В программе все должно быть красиво как я вижу, без всяких ID
Буду реализовывать через Query

Если у кого-нибудь есть что подсказать, поправить, дополнить буду рад  smile   

Автор: Vas 29.5.2006, 18:20
Цитата(Maiwend @  25.5.2006,  13:40 Найти цитируемый пост)
А пользователи у тебя какие-либо данные вносят в базу?

Естественно вносят. Просто когда они что-либо вбивают открывается окошко с нужными компонентами Edit'ы, ComboBox'ы и т.д. и в нем уже редактируют или набивают, а потом сохраняют и видят запись уже в таблице. Все таблицы у меня всегда в ReadOnly. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)