nDelta.ru
Техника, интернет, программное обеспечение, программирование
Связаться с владельцем сайта Email
  • Главная
  • Контакты
    • Обратная связь
    • О сайте
  • Архив
  • Рубрики
    • Гаджеты
    • Новости
    • От Автора
    • Софт
    • Хочу знать!
    • Интернет
  • Блог
Главная » Код » Delphi. Пример транзакции Firebird в Delphi.
Delphi. Пример транзакции Firebird в Delphi.

Delphi. Пример транзакции Firebird в Delphi.

Пример процедуры транзакции между Delphi и Firebird. Сразу извиняюсь за оформление, форматировать не стал. Достаточно простое на мой взгляд решение с откатом транзакции в случае исключения. Передаете строку sql-запроса в процедуру и все. Подойдет естественно не только для Insert. На форме должны быть типовые компоненты со вкладки InterBase. Сам помню долго искал, разбирался, потом правил под себя, в общем примерно такую конструкцию, ну плюс-минус, использую во всех своих приложениях.

Посмотрим насколько актуальна тема Delphi, если приходить будут разовью дальше.

procedure TMainForm.InsertSQL(QueryString: string);
begin
try
with IBQuery do
begin
SQL.Text := QueryString;
Transaction.StartTransaction;
ExecSQL;
Transaction.Commit;
Transaction.Active := false;
end;
except
on E: Exception do
begin
if IBQuery.Active then
IBQuery.Transaction.Rollback;
Application.MessageBox(PChar(E.Message), ‘Ошибка’, MB_ICONERROR);
end;
end;
end;

Последние сообщения

  • Delphi запросы MySQL.
    Delphi запросы MySQL.15.09.2015
  • Что такое VDS и VPS хостинг
    Что такое VDS и VPS хостинг18.02.2015
  • Как сохранить данные в файл в Delphi.
    Как сохранить данные в файл в Delphi.29.10.2014

Популярные сообщения

  • Как сделать root на Samsung Galaxy S3
    Как сделать root на Samsung Galaxy S327.03.2013
  • Samsung Galaxy S3 тормозит !?
    Samsung Galaxy S3 тормозит !?25.03.2013
  • Сброс настроек Galaxy
    Сброс настроек Galaxy07.06.2012

3 Ответа на Delphi. Пример транзакции Firebird в Delphi.

  • Андрей 02.06.2014

    у меня пишет ошибку «Transaction in active»

    • Александр 25.06.2014

      Попробуйте перед SQL.Text := QueryString; вставить Transaction.Active := False;
      Где-то, возможно при открытии DataSet например, транзакция у вас не закрывается. Как вариант, можно использовать несколько транзакций.

  • Kladr Gnivc 29.07.2016

    старт, операторы и завершение транзакции выполняется в одном блоке кода, например в процедуре обработчика нажатия кнопки.

Самое читаемое

  • Samsung Galaxy S3 тормозит !?
    Samsung Galaxy S3 тормозит !?
  • Сброс настроек Galaxy
    Сброс настроек Galaxy
  • Пульсометр Protouch Beat Pro 10
    Пульсометр Protouch Beat Pro 10
  • Android аккаунт
    Android аккаунт
  • Батарея Android, как продлить время работы
    Батарея Android, как продлить время работы

Рубрики

  • GalaxyS (4)
  • Гаджеты (4)
  • Интернет (7)
  • Код (4)
  • Новости (6)
  • От Автора (11)
  • Разное (1)
  • Софт (19)
  • Хочу знать! (12)

Свежие комментарии

  • Аля Гончарова к записи Что такое VDS и VPS хостинг
  • Kladr Gnivc к записи Delphi. Пример транзакции Firebird в Delphi.
  • Екатерина к записи Android аккаунт
  • Александр к записи Пульсометр Protouch Beat Pro 10
  • Виталий к записи Пульсометр Protouch Beat Pro 10
© 2011 - 2021 nDelta.ru Копирование материалов сайта возможно только с указанием ссылки - ndelta.ru