![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 08.02.2007
Сообщений: 7
|
![]()
Добрый день.
Столкнулся со следующей проблемой: В отдельной форме вводятся данные полей, затем добавляется запись в уже подключенную базу Access: Код:
Затем на основной форме обновляем таблицу: ADOTable1.Active := False; ADOTable1.Active := True; Но новая запись видна в таблице, только если обновить ADOTable спустя секунд 5. Пробовал по-разному, все равно такая задержка.. БД локальная. Подскажите, пожалуйста, если какой-то выход? Заранее спасибо) Последний раз редактировалось Stilet; 16.05.2011 в 17:54. |
![]() |
![]() |
![]() |
#2 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]()
Есть такой метод - Requery method (TCustomADODataSet).
|
![]() |
![]() |
![]() |
#3 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]()
Все предыдущее обсуждение слетело по объективным причинам, как выяснилось. Ну, да не беда.
Совет - минимально использовать закрытие/открытие Query, при большой базе этот процесс занимает приличное время. Конкретно по данному случаю - неправильные установки кэширования записей, мне так кажется. |
![]() |
![]() |
![]() |
#4 | ||
Регистрация: 08.02.2007
Сообщений: 7
|
![]() Цитата:
Цитата:
Менял CacheSize в ADOTable - ноль эффекта( |
||
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 09.02.2007
Сообщений: 49
|
![]()
Попробуй обойтись без ADOTable, только используя ADOQuery
т.е. подруби Query к гриду и... Код:
Свой среди чужих
Чужой среди своих Последний раз редактировалось Lynx; 11.02.2007 в 00:16. |
![]() |
![]() |
![]() |
#6 |
Регистрация: 08.02.2007
Сообщений: 7
|
![]()
Пробую - после запроса на гриде вообще ничего не отображается.. Такое впечатление, что я что-то совсем очевидное не так сделал... =(
Вот маленький проект, где только грид и query. При создании формы query подключается к базе, и делает запрос 'SELECT * FROM MainTable'. DBGrid1 подключен к ADOQuery1 через DataSource1. По идее на гриде должно появиться содержимое этой таблицы, но он пуст(( http://slil.ru/23910643 Подскажите, пожалуйста, что не так. |
![]() |
![]() |
![]() |
#7 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]()
А кто поля в гриде определит, Пушкин?
А у Query? А зачем вот эта строка: ADOQuery1 := TADOQuery.Create(nil); Ведь ADOQuery1 уже лежит на форме... Дальше: Цитата:
Последний раз редактировалось mihali4; 11.02.2007 в 17:30. |
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 09.02.2007
Сообщений: 49
|
![]()
Я конечно не профи но вот твой листинг, чуть корректированный
Код:
Свой среди чужих
Чужой среди своих Последний раз редактировалось Lynx; 11.02.2007 в 17:36. |
![]() |
![]() |
![]() |
#9 |
Регистрация: 08.02.2007
Сообщений: 7
|
![]()
А, я адски ступил.... -_-'
Сейчас попробую только через query все переправить, надеюсь пропадет задержка... Спасибо вам огромное за советы!))) Чтобы я без вас делал)) P.S. Просьба не бить за глупые вопросы, я учусь только.. =) |
![]() |
![]() |
![]() |
#10 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]() Цитата:
Квэри открывать только один раз - после присвоения Connection_String и первого текста SQL. Далее - квэри не закрывать (поскольку это не нужно для переназначения текста SQL) и использовать ExecSQL. |
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
dephi/sql автозаполнение таблицы??? | Geddar | Помощь студентам | 12 | 23.05.2008 08:31 |
помогите зделать базу в access | tolik | Помощь студентам | 4 | 13.05.2008 14:47 |
com порт и Dephi | kwn | Общие вопросы Delphi | 0 | 22.04.2008 22:33 |
как выгрузить базу данных из MySQL в Access??? | TRANE | Помощь студентам | 5 | 03.12.2007 13:22 |
добавления в готовую таблицу | Strelka | Microsoft Office Excel | 1 | 09.03.2007 17:27 |