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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.05.2011, 17:48   #11
Yrok
Пользователь
 
Регистрация: 04.03.2009
Сообщений: 16
По умолчанию

Цитата:
Добрый день.

Столкнулся со следующей проблемой:

В отдельной форме вводятся данные полей, затем добавляется запись в уже подключенную базу Access:

Код:
with ADOQuery1 do
begin
ConnectionString := Global_DBConnection_String;
SQL.Text := 'SELECT key FROM MainTable';
Open;
Last;
UniqueNumber := 1 + StrToInt(FieldByName('key').AsStrin g);
Close;
SQL.Text := 'INSERT INTO MainTable Values (' +
QuotedStr(IntToStr(UniqueNumber)) + ',' +
QuotedStr(ObjectNameBox.Text) + ',' +
QuotedStr(AdressBox.Text) + ',' +
QuotedStr(COUFNS.Text) + ',' +
QuotedStr(PlkaUFNS.Text) + ',' +
QuotedStr(COInspection.Text) + ',' +
QuotedStr(PlkaInspection.Text) + ',' +
QuotedStr(TORM.Text) + ',' +
QuotedStr(OutsideObjects.Text) +
')';
ExecSQL;
Close;
end;


Затем на основной форме обновляем таблицу:


ADOTable1.Active := False;
ADOTable1.Active := True;

Но новая запись видна в таблице, только если обновить ADOTable спустя секунд 5. Пробовал по-разному, все равно такая задержка..

БД локальная.

Подскажите, пожалуйста, если какой-то выход? Заранее спасибо)
Я понимаю что уже врятли актуально автору темы--но сам столкнулся с такими граблями и нигде не мог найти ответа почему происходит задержка при добавлении новой записи и даже при изменении старой.
Оказалось что если открыт запрос к таблице в которой происходит обновление или добавление записи--то наблюдается такая задержка----закройте все запросы к таблице и добавьте или обновите данные после чего можно делать выборку опять и будет вам счастье)))))

Последний раз редактировалось Serge_Bliznykov; 16.05.2011 в 21:20.
Yrok вне форума Ответить с цитированием
Старый 16.05.2011, 17:57   #12
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Оказалось что если открыт запрос к таблице в которой происходит обновление или добавление записи--то наблюдается такая задержка
Помоему все верно. Перед тем как внести новые данные нужно заблокировать базу, вот и получается задержка, пока залочит, пока обновит пока разлочит...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
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