Re: транзакции, блокировки?
От: Alice_The_Fox  
Дата: 25.02.04 15:57
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте. Возможно у меня дурацкий вопрос.

А>Есть два клиента, оба одновременно правят одну и туже запись.
А>Действия клиента.
А>1. Читаем данные из бд
А>2. Кешируем их
А>3. Пользователь редактирует данные в кеше.
А>4. Открываем транзакцию, пишем в бд, закрываем транзакцию

А>Вот теперь вопрос, при записи данных 1 клиентом в бд, 2 клиент, не записавший еще

А>их в бд имеет у себя в кеше недостоверные данные. Как при записи данных 2 клиентом проверить, не внес ли кто до него
А>изменения? И в этом случае не дать выполнить изменения ?
А>Держать открытой транзакцию на все время жизни форма(диалога) — имхо не верно.
А>Проверять ручками на верность записей — вроде тоже маразм. Как это решается правильно?

К сожалению, не могу похвастаться высоким уровнем знаний и практическим применением оных. Но подобные вопросы подробно рассматривались в книге Тома Кайта "Oracle для профессионалов". Рекомендую посмотреть там. Конечно, книга посвещена Oracle. Так, что ответ скорее профильный.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.