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

Вниз

Вопрос по ADO и компонентам БД   Найти похожие ветки 

 
WorkWork   (2011-09-11 20:57) [0]

Привет всем! нужна помощь! вообщем пишу прогу, которая подключается к базе через ADOConnection, с ним связан ADOQuery. На форме есть ДБ грид и пару ДБ едитов. Вообщем если изменять данные в ДБ эдите, то они не всегда сохраняются, например если я изменил и закрыл прогу, то они не сохранятся, а если я изменю и в гриде пощелкую вверх или вниз, то они сохранятся.

Как сделать так, чтобы они всегда сохранялись?


 
Inovet ©   (2011-09-11 21:27) [1]

В FormClose сделай Dataset->Post


 
Dennis I. Komarov ©   (2011-09-11 21:35) [2]

with TDBEditForm.Create(...             do try
 if ShowModal = mrOk then begin
   .....
   Post;
 end;
finally
 Free;
end;


 
WorkWork   (2011-09-11 21:39) [3]

Спасибо! зделаю Edit, Post.


 
WorkWork   (2011-09-12 04:20) [4]

Привет! у меня еще проблемка! Вообщем структура программы такая-же, плюс:
В 1-м ДБ гриде выделяется какая-то запись и в остальных ДБ компонентах отображаются данные по этой записи, помимо этого есть еще один ДБ грид, в котором отображается таблица по этой-же записи, которая в самой базе хранится в отдельной таблице.

Подскажите как лучше синхронизировать изменения во 2 гриде. Пробую делать ЕДИТ, ПОСТ, но в итоге получаются сплошные лаги. Например если я буду изменять данные во 2 гриде и перейду на другую запись в 1-м гриде, то они не всегда сохранятся. Неужели нет какого-то простого метода?


 
WorkWork   (2011-09-12 04:35) [5]

Вообщем вопрос сводится к тому, как проверить, что набор данных находится в режиме редактирования? Пробывал

if ADOQuery.CanModify then
...
if ADOQuery.State=dsEdit then
...

неполучается.


 
sniknik ©   (2011-09-12 09:59) [6]

> неполучается.
не в том месте смотришь? State должен показывать правильно.


 
Евгений07   (2011-09-12 10:40) [7]

Dataset->Post сохраняет данные в кэш и не во всех Дельфях физически в базу записывает.
Смотри Рефреш или Репайнт


 
Dennis I. Komarov ©   (2011-09-13 21:23) [8]

Выкинь грид и подумай над интерфейсом...


 
Inovet ©   (2011-09-13 22:44) [9]

> [5] WorkWork   (12.09.11 04:35)
> State=dsEdit

Ещё dsInsert надо проверить.


 
lesstab ©   (2011-09-14 13:23) [10]

А я пишу в OnDataChange событии DataSource компоненты фильтрацию записей соответствующих таблиц.



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

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

Наверх




Память: 0.49 MB
Время: 0.008 c
15-1315600188
Юрий
2011-09-10 00:29
2011.12.25
С днем рождения ! 10 сентября 2011 суббота


2-1316362141
Pcrepair
2011-09-18 20:09
2011.12.25
Отобразить hwnd в Label1 или Edit1


15-1315116661
Eeuwige Rouw
2011-09-04 10:11
2011.12.25
PAS Файлы


15-1315402684
Jeer
2011-09-07 17:38
2011.12.25
Зачетный HTML 5


4-1253257069
d@vinchi
2009-09-18 10:57
2011.12.25
Как отправить службе сообщение WM_CopyData?