![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 23.11.2006
Сообщений: 53
|
![]()
Привет всем ! С наступающей весной !
А теперь к делу ) : При нажатииина кнопку я в БД добавляю строку с помощью INSERT INTO. Строка добавляется в БД, но это не отображается в самой сетке DbGrid, которая связана с этой БД...поэтому приходится делать QueryMain.close QueryMain.open вот думаю, если в БД будет пара тысяч записей - это постоянное закрывание /открывание не затормозит работу ? И как это исправить, если так ? |
![]() |
![]() |
![]() |
#2 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]()
QueryMain.Refresh;
А еще лучше - привести нормальный текст обработчика, а не делать тайны там, где ее нет и быть не может. Здесь ясновидящих нет! ![]() Последний раз редактировалось mihali4; 28.02.2007 в 21:57. |
![]() |
![]() |
![]() |
#3 | |
Пользователь
Регистрация: 23.11.2006
Сообщений: 53
|
![]() Цитата:
Метод Refresh немедленно обновляет записи источника данных формы, чтобы отобразить сделанные пользователями изменения в многопользовательской среде. ВНИМАНИЕ Обратите внимание, что метод Refresh не выполняет отбор записей заново, то есть не формирует повторный запрос к базе данных. Отображаются только изменения, внесенные в текущий набор записей. При этом на экране не будут отображены данные, добавленные или удаленные из базы данных после последнего обновления набора записей. Чтобы выполнить новый отбор записей, следует выполнить метод Requery, о котором сказано ниже. Метод Requery обновляет данные, служащие источником данных формы или элемента управления на активной форме. Данные обновляются путем повторного запроса к источнику данных формы или элемента управления. Таким образом, этот метод позволяет отображать текущие данные в форме или элементе управления. Использование метода Requery предполагает выполнения одного из следующих действий: Повторно выполняется запрос формы или элемента управления. Выводятся все добавленные или измененные записи и убираются записи, удаленные из базовой таблицы формы или элемента управления. Обновляются выводимые в форме или элементе управления записи в соответствии с изменением свойства Фильтр (Filter) формы. Т.е. достаточно после каждого изменения делать Refresh, чтоды получить изменеёёные записи, и всё ?? Нежели каждый раз делать повторнывй запрос ко всей БД, что затормозит работу... |
|
![]() |
![]() |
![]() |
#4 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]()
Вот оригинал из дельфийского хэлпа:
Цитата:
Re: Кстати, там есть малюсенькое замечание - Query должна быть в режиме LIVE, тогда Refresh работает... Все-таки самый лучший хэлп - у Дельфи. Последний раз редактировалось mihali4; 01.03.2007 в 19:36. |
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 23.11.2006
Сообщений: 53
|
![]() |
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 04.03.2007
Сообщений: 615
|
![]()
обновление TDataSet при добавлении новой записи это нормальный феномен...
ты волняешь запрос ExecSQL, затм подтверждаешь транзакцию и обновляешь DataSet |
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
insert через table->grid: ошибка | Geddar | БД в Delphi | 2 | 06.06.2008 13:43 |
mysql проблемы с INSERT | proglamer | PHP | 4 | 30.03.2008 14:36 |
Ошибка при Выполнении Insert | nimf | БД в Delphi | 2 | 27.11.2007 18:16 |
Insert в TQuery из библиотеки | langerhed | БД в Delphi | 2 | 01.11.2007 08:10 |