Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Почему не "обновляется" DBGrid? [D7, XP]


fasta ©   (2006-03-12 13:17:00) 

С помощью TQuery втавляю значения в таблицу (парадокс), которая связана с DBGrid-ом. Но после вставки, эти значения не видны в гриде. Как сделать, что значения обновлялись?


ЮЮ   (2006-03-13 05:48:00) [1]


> А откуда взяты "39" и "20"?

Из вопроса автора:

> festa   (12.03.06 14:06) [4]
Query1.SQL.Text:='INSERT INTO LOC (D,F) VALUES (39,20)';


Германн   (2006-03-13 03:57:00) [2]


> ЮЮ ©   (13.03.06 03:36) [9]
>
>
> > А для локальной парадоксовской базы, так и вообще может
>
> > быть наилучшим решением в среде Дельфи. Имхо.
> >
>
>
> Для локальной ещё проще
> Table1.Append;
> Table1.FieldByName('D').asInteger := 39;
> Table1.FieldByName('F').asInteger := 20;
> Table1.Post;
>
> Автору. Первые три операторатора добавят запись в набор
> данных, отображаемый в гриде, т.е. переоткрывать его не
> надо будет. Последний же - по сути аналогичен выполнению
> запроса на вставку (в случае работы с серверными БД именно
> запрос на вставку и будет порожден БДЕ)


А откуда взяты "39" и "20"?


ЮЮ   (2006-03-13 03:36:00) [3]


> А для локальной парадоксовской базы, так и вообще может
> быть наилучшим решением в среде Дельфи. Имхо.
>


Для локальной ещё проще
Table1.Append;
Table1.FieldByName('D').asInteger := 39;
Table1.FieldByName('F').asInteger := 20;
Table1.Post;

Автору. Первые три операторатора добавят запись в набор данных, отображаемый в гриде, т.е. переоткрывать его не надо будет. Последний же - по сути аналогичен выполнению запроса на вставку (в случае работы с серверными БД именно запрос на вставку и будет порожден БДЕ)


Германн   (2006-03-13 02:48:00) [4]


> Desdechado ©   (12.03.06 15:13) [7]
>
> использовать Query и Table в одной программе - как-то странно
> это как рисовать картины одновременно акварелью и из аэрозольного
> баллончика


Может и странно, но никем и ничем не запрещено!
А для локальной парадоксовской базы, так и вообще может быть наилучшим решением в среде Дельфи. Имхо.


Desdechado   (2006-03-12 15:13:00) [5]

использовать Query и Table в одной программе - как-то странно
это как рисовать картины одновременно акварелью и из аэрозольного баллончика


festa   (2006-03-12 14:27:00) [6]

>Vlad ©   (12.03.06 14:11) [5]
спасибо за подробный ответ. Все получилось


Vlad   (2006-03-12 14:11:00) [7]


> festa   (12.03.06 14:06) [4]


>    Query1.Close;

Это не нужно.
В конце допиши Table1.Close; Table1.Open;


festa   (2006-03-12 14:06:00) [8]

т.е. переоткрыть таблицу в моем случае? Не получается

   Query1.Close;
   Query1.SQL.Clear;
   Query1.SQL.Text:='INSERT INTO LOC (D,F) VALUES (39,20)';
   Query1.ExecSQL;
   Table1.Open;


Virgo_Style   (2006-03-12 13:57:00) [9]

не тот, которым вставляешь, а тот, результаты которого показываешь


fasta   (2006-03-12 13:26:00) [10]

Зачем переоткрывать? Я выполняю его (Query1.ExecSQL;)


Anatoly Podgoretsky   (2006-03-12 13:18:00) [11]

Переоткрыть запрос.


Наверх

Титульная страница Поиск, карта сайта Написать письмо