Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 12:39 18.04.24 
Компютри и Интернет
   >> Delphi
Всички теми Следваща тема *Кратък преглед

Тема Съвет за Rollback на транзакция  
АвторDaniel (Нерегистриран)
Публикувано19.06.05 18:32



Здравейте, имам следните въпроси:
1. Възможно ли е при клиент-сървър система, след ApplyUpdates на ClientDataSet (клиентска част - DataModule), да се направи реверс, т.е. пратената информация да се върне, все едно изобщо не е била записвана в базата ?

2. Подобно на първия въпрос, само че за сървърна част. Ако след SQL заявка (Query) съм дал Commit, възможно ли е транзакцията да се върне обратно ?

Използва се DCOMConnection, RemoteDataModule (сървър), DataModule (клиент), Query (сървър), ClientDataSet (клиент), Database компонент.
Базата данни е FireBird 1.5
Среда: Delphi 5, Windows XP

Моля, ако някой може да помогне с информация как се прави това , нека помогне.



Тема Re: Съвет за Rollback на транзакциянови [re: Daniel]  
Автор andrew_nikoloff (bugbuster)
Публикувано19.06.05 18:43



Здравей!
На първия ти въпрос:
1. Възможно ли е при клиент-сървър система, след ApplyUpdates на ClientDataSet (клиентска част - DataModule), да се направи реверс, т.е. пратената информация да се върне, все едно изобщо не е била записвана в базата ?
Можеш единствено да rollback-неш транзакцията и да си презаредиш DataSet-а, т.е. губиш промените.

Относно:
2. Подобно на първия въпрос, само че за сървърна част. Ако след SQL заявка (Query) съм дал Commit, възможно ли е транзакцията да се върне обратно ?
Прекият отговор е - не, не можеш. Но има едно "НО". Ти ползваш Firebird 1.5. Той поддържа savepoints. Това е нещо като вложени транзакции, т.е. вместо да правиш commit можеш да сложиш savepoint и след това да rollback-неш до него или да rollback-неш цялата транзакция. За savepoints виж в Release Notes-а на сървъра. Там е много добре описано.




Всички темиСледваща тема*Кратък преглед
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2024 Dir.bg Всички права запазени.