Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.12.19;
Скачать: [xml.tar.bz2];

Вниз

Транзакции   Найти похожие ветки 

 
MORA   (2004-11-19 13:48) [0]

Достигнув некоторого более-менее уровня в проектировании БД и написании для них апликух, попалась мне под руку книжица для начинающих по программированию БД в Д-7. (Рекомендую всем иногда возвращаться назад - почерпнёте много интересного, но на другом уже уровне!). Дык вот. Возник у меня естественный вопрос:

При использовании кэширования в запросе Query (CachedUpdetes = True) юзверь может НАДОЛГО зависнуть над редактированием одной записи. В это же время другой юзверь, отредактировав её же, успешно сохраняет (ApplyUpdates). А первый пытается стартовать транзакцию, которая записывает в кэшированную(!?) таблицу изменения (изменения не только в эту единственную таблицу, но и в НЕКЭШИРУЕМУЮ!) - допустим успешно. А потом уже нажимает кнопку ApplyUpdates. В обработчике OnUpdateRecord например можно отказаться от сохранения изменений на диске. Но при этом всё ,что сделано в транзакции, не касающееся данной кэшируемой таблицы, останется.

Может, я неправильно организовал логику, то поправьте меня.


 
msguns ©   (2004-11-19 13:55) [1]

Параметры транзакции, тип БД, движок ?


 
MORA   (2004-11-19 13:57) [2]

>[1]
Пример я описал. Код неважен, выжно когда начало и Коммит/Роллбэк.
БД например IB, хотя по-моему тож неважно


 
Johnmen ©   (2004-11-19 14:09) [3]

Кеширование в данном случае неважно.
Главное Коммит/Роллбэк. Перед внесением изменений в таблицы стартуешь тр., после этого Коммит/Роллбэк.


 
MORA   (2004-11-19 14:35) [4]

>[3]
да. наверное так. Т.е. надо следить ,какая табл. кэшируется, а какая - нет.
Я имею в виду ситуацию, когда в транзакции изменяется и та, и другая таблицы. И здесь же нужно делать ApplyUpdates().

Но возникает другая проблема - при ручной реакции на OnUpdateRecord() транзакция может надолго зависнуть.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.12.19;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.038 c
14-1101976195
Knight
2004-12-02 11:29
2004.12.19
Есть простой редактор DOS-текстов?


1-1101993861
tytus
2004-12-02 16:24
2004.12.19
Совместное использование .


1-1101906911
ANDREI
2004-12-01 16:15
2004.12.19
search


14-1101897095
Xaker
2004-12-01 13:31
2004.12.19
HookMonitor - или КОНЕЦ ВСЕМ Keylogger am !


14-1101451713
NewDelpher
2004-11-26 09:48
2004.12.19
Поиск в модуле нужной функции (процедуры) по имени





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский