1. Наш канал codeby в telegram. Пишем об информационной безопасности, методах защиты информации, о программирован. Не пропускай новости с кодебай, будь в тренде ! Подробнее ...

    Скрыть объявление
  2. Чат codeby в telegram перезагрузка. Обсуждаем вопросы информационной безопасности и методы защиты информации, программирование. Задавайте свои вопросы и комментируйте чужие. Подробнее ...

    Скрыть объявление

Задержка добавления записи в базу Access из Dephi

Тема в разделе "Delphi - программирование", создана пользователем Zver, 6 фев 2007.

Статус темы:
Закрыта.
  1. Zver

    Zver Гость

    Репутация:
    0
    Добрый день.

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

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

    with ADOQuery1 do
    begin
    ConnectionString := Global_DBConnection_String;
    SQL.Text := 'SELECT key FROM MainTable';
    Open;
    Last;
    UniqueNumber := 1 + StrToInt(FieldByName('key').AsString);
    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. Пробовал по-разному, все равно такая задержка..

    Подскажите, пожалуйста, если какой-то выход? Заранее спасибо)
     
  2. LAW

    LAW Гость

    Репутация:
    0
    А БД в сети или локально?
     
  3. Zver

    Zver Гость

    Репутация:
    0
    Локально
     
  4. LAW

    LAW Гость

    Репутация:
    0
    По тексту программы никаких видимых заминок быть не должно, кроме метода Last().
    Как вариант, можно попробовать получить значение с помощью запроса:
    Код:
    SELECT MAX(KEY) FROM MAINTABLE
    Но скорее всего оперативной памяти не хватает или ещё почему-то серверная часть Access медленно отрабатывает.
    Обновлять можно методом Refresh() немного быстрее.

    Удачи!
     
Загрузка...
Похожие Темы - Задержка добавления записи
  1. Gemini
    Ответов:
    10
    Просмотров:
    2.047
  2. deeeman
    Ответов:
    2
    Просмотров:
    1.229
  3. yrinanatasha
    Ответов:
    1
    Просмотров:
    1.488
  4. asd8502
    Ответов:
    0
    Просмотров:
    1.175
  5. Kizarek86
    Ответов:
    2
    Просмотров:
    1.743
Статус темы:
Закрыта.

Поделиться этой страницей