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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 30.07.2009, 20:38   #1
nikmay
Пользователь
 
Регистрация: 25.06.2009
Сообщений: 33
Счастье Транзакции и try

Помогите, пожалуйста, разрешить следующую ситуацию.

Каким образом следует использовать обработчик исключений try ... except, try ... finally и StartTransaction и Commit ?

Код:
 try
   try
     IBTransaction1.StartTransaction;
     . 
     .
     .
    except
    end;
  finally
     if IBTransaction1.Active then IBTransaction1.Commit;
  end;
Вот так правильно???
nikmay вне форума Ответить с цитированием
Старый 30.07.2009, 21:13   #2
Daramant
Форумчанин
 
Регистрация: 06.01.2009
Сообщений: 340
По умолчанию

Правильно будет так:
Код:
 try
    BeginTrans; // начинаем транзакцию

    // INSERT | UPDATE | DELETE

    CommitTrans; // фиксируем транзакцию
  except
    RollBackTrans; // откат транзакции
  end;
Замени BeginTrans, CommitTrans, RollBackTrans на реальные команды.

В ADO это будет через:
Connection.BeginTrans;
Connection.CommitTrans;
Connection.RollbackTrans;

У тебя:
IBTransaction1.StartTransaction;
IBTransaction1.Commit;
IBTransaction1.Rollback; // или что-то похожее.
Истинный успех – это то, что Вы сделали в сравнении с тем, что могли бы сделать.
Никогда не бойся делать то, что ты не умеешь. Помни, ковчег был построен любителем. Профессионалы построили "Титаник".

Последний раз редактировалось Daramant; 30.07.2009 в 21:19.
Daramant вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос про транзакции и не только. danswin БД в Delphi 9 17.01.2009 18:35
Транзакции + ADO azat БД в Delphi 3 14.01.2008 11:47