![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
DBGrid и Access. Не обновляет [D7, Access]
k0ks © (2009-12-10 18:23:00)Решил попробовать связать Delphi и Access (ADOConnection, ADOQuery, DATASource, DBGrid). Почему после добавления данных через Query (INSERT INTO USERS (NAME) VALUES (:PNAME);) в DBGrid они не появляются? Для обновленя ADOQuery1 (SELECT FROM USERS) пробовал ADOQuery1.close\open, ADOQuery.Active:=false\true. Но результата это не дало. Получилось только с использованием таймера на 4 секунды (3 уже не обновляет), что очень не удобно. Причем когда связывал с базой SQL все отлично обновлялось сразу же
Anatoly Podgoretsky (2009-12-10 19:53:00) [1]
> это про то, что проблему решить надо помочь
Ни в коем случае, и так уже страшно.
Какой еще
DM.ADOConnection1.CommitTrans;
в данном месте.
Какой еще ADOTable1
Какой еще Timer1
Проходи практику без компьютера, можешь руководству сказать, что на ДМ запретили.
k0ks (2009-12-10 19:44:00) [2]неа. ты меня спас! Спасиб
Медвежонок Пятачок (2009-12-10 19:42:00) [3]Уфф...
"Кекс, кажется я спас мир. Два раза"
/* персонаж "Укроп". сериал "Даешь Молодешь" */
k0ks (2009-12-10 19:41:00) [4]да там программа 2 строчки 3 запроса. просто всегда делал с sql 2000 и проблем не возникало. но тут увы, сервер не поставишь
k0ks (2009-12-10 19:40:00) [5]все понял. спасибо всем
Медвежонок Пятачок (2009-12-10 19:39:00) [6]это называется резервирование.
на АЭС иначе нельзя.
по отдельному коннекту на каждый чих
sniknik (2009-12-10 19:38:00) [7]> Давайте по теме.
по теме тебе давно уже дали... не тормози! примени!
k0ks (2009-12-10 19:38:00) [8]
> один коннекшен на всех.
> один адокомманд на инсерт.
> один адодатасет на селект
И так. про канекшн. Как именно? ведь если не использовать ConnectionString для Query1 то DataSource его не увидит.
sniknik (2009-12-10 19:37:00) [9]>> выглядит так что он у всех (вставляющего и читающего) компонентов разный.
> Всё правильно.
ну и чего ты хочешь тогда? все правильно, разные объекты = разный кеш буфер = пока один на диск не сольет, а другой не перечитает → разные данные.
k0ks (2009-12-10 19:36:00) [10]
> может наоборот? не справишься и глядишь настоящего программиста
> пригласят... и катастрофы не произойдет. а иначе придется
> брать красную монтировку, от хедкрабов отбиваться...
Давайте по теме. Это мать попросила написать для нее, а для меня - это скоротать время. И отдел поддержки пользователей программированием не занимаеся.
Медвежонок Пятачок (2009-12-10 19:36:00) [11]Всё правильно. Читающий ADOQuery1 подключен напрямую через ConnectionString. ADOQuery2 через ADOConnection1 на модуле (DM). Datasource->ADOQuery1, DBGrid->DataSource
ну вот. исправляй свое "правильно" на совсем правильно.
один коннекшен на всех.
один адокомманд на инсерт.
один адодатасет на селект
k0ks (2009-12-10 19:34:00) [12]Microsoft Jet4
sniknik (2009-12-10 19:34:00) [13]еще и ADOTable1.... ЖУТЬ!
> это про то, что проблему решить надо помочь
может наоборот? не справишься и глядишь настоящего программиста пригласят... и катастрофы не произойдет. а иначе придется брать красную монтировку, от хедкрабов отбиваться...
k0ks (2009-12-10 19:34:00) [14]>выглядит так что он у всех (вставляющего и читающего) компонентов разный.
Всё правильно. Читающий ADOQuery1 подключен напрямую через ConnectionString. ADOQuery2 через ADOConnection1 на модуле (DM). Datasource->ADOQuery1, DBGrid->DataSource
Медвежонок Пятачок (2009-12-10 19:33:00) [15]заодно открывай тайну какой провайдер акцесса у тебя используется
Медвежонок Пятачок (2009-12-10 19:29:00) [16]ну для начала начни применять советы которые уже здесь есть.
про адокомманд и адодатасет
k0ks (2009-12-10 19:27:00) [17]это про то, что проблему решить надо помочь
Медвежонок Пятачок (2009-12-10 19:19:00) [18]про аэс - это нам страшная сказка на ночь?
k0ks (2009-12-10 19:18:00) [19]Да обработчик пока не писал. не до этого. 2 дня сижу с этой бедой. с таймером вообще не красиво, пришлось даже прогресс бар запихнуть. Сейчас на практике на АЭС, так вот нужно мелкую прожку написать. Уже и другой компонент вставлял (JVDBGrid) и на другой машине с delphi 2006 запускал. ничего
Медвежонок Пятачок (2009-12-10 19:13:00) [20]а если коммит обломается, то исключения нам пофик.
хотя к эффекту задержки это конечно не относится.
плюс: начинаем транзакцию перед работой с параметрами.
а если там вдруг исключение, то надеемся что пушкин разберется с начатой транзакцией за нас