Здравствуйте, Аноним, Вы писали:
А>Здравствуйте. Возможно у меня дурацкий вопрос. А>Есть два клиента, оба одновременно правят одну и туже запись. А>Действия клиента. А>1. Читаем данные из бд А>2. Кешируем их А>3. Пользователь редактирует данные в кеше. А>4. Открываем транзакцию, пишем в бд, закрываем транзакцию
А>Вот теперь вопрос, при записи данных 1 клиентом в бд, 2 клиент, не записавший еще А>их в бд имеет у себя в кеше недостоверные данные. Как при записи данных 2 клиентом проверить, не внес ли кто до него А>изменения? И в этом случае не дать выполнить изменения ? А>Держать открытой транзакцию на все время жизни форма(диалога) — имхо не верно. А>Проверять ручками на верность записей — вроде тоже маразм. Как это решается правильно?
К сожалению, не могу похвастаться высоким уровнем знаний и практическим применением оных. Но подобные вопросы подробно рассматривались в книге Тома Кайта "Oracle для профессионалов". Рекомендую посмотреть там. Конечно, книга посвещена Oracle. Так, что ответ скорее профильный.