Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 03.03.2010, 17:11   #1
ArtInt
Форумчанин
 
Аватар для ArtInt
 
Регистрация: 06.03.2009
Сообщений: 583
По умолчанию Не отображается новая добавленная строка в DBGrid

В AdoQuery1 делаю запросы, DBGrid тоже с ним связан.
Проблема в том, что в при добавлении записи в одну из таблиц (которая участвует в AdoQuery), в DBGrid не происходит отображение данной записи. Отображается только после закрытия приложения и запуска его снова.
Наверняка, кто-нибудь уже сталкивался с этим, как лучше устранить данную проблему?
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
ArtInt вне форума
Старый 03.03.2010, 17:18   #2
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Код:
ADOTable1.Refresh;
Поставь после добавления записи. Или
Код:
DBGrid1.DataSource.DataSet.Refresf;
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума
Старый 03.03.2010, 17:20   #3
program123
Подтвердите свой е-майл
 
Регистрация: 12.02.2009
Сообщений: 144
По умолчанию

после добавления сразу делай выборку, например:
Код:
ADOQuery1.FieldByName('имя').AsString:=Edit1.Text;
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('SELECT * FROM БАЗАДАННЫХ');
ADOQuery1.Open;
program123 вне форума
Старый 03.03.2010, 17:31   #4
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Цитата:
после добавления сразу делай выборку, например:
А зачем лишний раз напрягать программу свою и выполнять лишние несколько строк кода? когда можно просто обновить БД после добавления записи. ИМНО.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума
Старый 03.03.2010, 17:33   #5
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Поскольку SQL для выборки у вас уже был определен раньше, то достаточно:
Код:
ADOQuery1.Close;
ADOQuery1.Open;
mihali4 вне форума
Старый 04.03.2010, 15:58   #6
ArtInt
Форумчанин
 
Аватар для ArtInt
 
Регистрация: 06.03.2009
Сообщений: 583
По умолчанию

В данном случае помогло
ADOQuery1.Close;
ADOQuery1.Open;
По логике обновление данных(Refresh) должно было сработать, но почему то не срабатывало.
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.

Последний раз редактировалось mihali4; 05.03.2010 в 01:12.
ArtInt вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не удаляется строка из DBGrid Nesta23 Общие вопросы C/C++ 0 15.01.2010 16:15
Отчет в QReport - В режиме просмотра не отображается строка заголовка annaaaron Общие вопросы Delphi 0 31.08.2009 17:02
новая строка в запросе Крокодил Microsoft Office Access 5 21.05.2009 12:20
Запрос не отображается на DBGrid Лукманов Александр БД в Delphi 13 25.02.2009 21:19
Выделяемая строка DBGRID GLAZZ БД в Delphi 1 08.10.2008 11:15