![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Почему не обновляется база данных
dyd © (2006-04-10 23:39:00)Здравтсвуйте.
Есть акцессовские таблицы, TBL_kurs1 и TBL_Students. Есть запрос (AdOQuery)"
SELECT TBL_Kurs2.Year,TBL_Kurs2.SumOf3,TBL_Kurs2.SumOf4,TBL_Kurs2.SumOf5, TBL_Kurs2.Sum2Of3,TBL_Kurs2.Sum2Of4,TBL_Kurs2.Sum2Of5,TBL_Students.LastName, TBL_Students.FirstName, TBL_Students.Patronymic, TBL_Students.Budget, TBL_Students.Domicile, TBL_Students.Tel, TBL_Students.Citizenship, TBL_Students.Group, TBL_Students.Sex, TBL_Students.Profession, TBL_Students.DateBday, TBL_Students.DateBmoth, TBL_Students.DateByear, TBL_Students.PasSerial, TBL_Students.PasNum, TBL_Students.PasWho, TBL_Students.PasWhere, TBL_Students.PasSubdivision, TBL_Students.Address, TBL_Students.Parents, TBL_Students.Sport, TBL_Students.initiative, TBL_Students.RecordBook, TBL_Kurs2.StudentID
FROM TBL_Kurs2 INNER JOIN TBL_Students ON TBL_Kurs2.StudentID = TBL_Students.StudentID;
Есть DBGrid, который отображает результат запроса. Так вот если я изменяю какую-нибудь запись, то изменения становится видно только после перезапуска программы (записи не обновляются, показываются старые, до изменения, а после перезапуска программы все становится видно)
Так вопрос такой: как сделать, чтобы изменения, которые я вношу (например в таблицу Students, сразу отображались в ДБгриде, который относится к запросу)
Amoeba (2006-04-12 14:46:00) [1]Ответ в посте [2].
После изменения записи делай ADOQUery1.Requery
Savek (2006-04-11 16:51:00) [2]Если через грид, то возможно спасет
procedure TForm1.DBGrid1ColExit(Sender: TObject);
begin
if (ADOQUery1.State=dsEdit) then ADOQUery1.Post;
end;
Anatoly Podgoretsky (2006-04-11 14:06:00) [3]Главное не перезапуская программу.
MsGuns (2006-04-11 13:04:00) [4]Requery
Desdechado (2006-04-11 11:30:00) [5]если изменения вносишь через тот же грид, то ты не можешь их не видеть
если же изменения через другие формы/запросы, то нужно просто переоткрыть этот отобразительный запрос
Close; Open;