Форум: "Базы";
Текущий архив: 2003.10.23;
Скачать: [xml.tar.bz2];
ВнизРазные ли будут транзакции? Найти похожие ветки
← →
linx (2003-10-02 05:59) [0]Народ, неприятная мысль меня посетила впредверии сдачи проекта заказчику. У меня написана база данных под InterBase, с использованием компонентов IBTable, IBQuery, IBDataBase, IBTransaction. При выполнении неких операций всегда задействована связка IBQuery(IBTable)-IBTransaction-IBDataBase. Операций в принципе достаточно много и поэтому при динамических запросах я зачастую использую одну и ту же транзакцию. Внутри одного клиентского рабочего места конфликтов связанных с использованием одной транзакции не возникает. Я специально следил за этим. Но что будет, когда запустятся 2 клиентских рабочих места? Не получится-ли так, что в момент, когда один пользователь создает нового абонента, другой будет производить другую операцию, используя ту же транзакцию? И внесет тем самым ошибки в данные, а может даже и к аварийному завершению операций. Ведь названия у транзакций одинаковые. Внутри одного клиентского места перекрестного использования транзакций (или, другими словами, одновременного выполнения двух конфликтующих операций)нет, а вот при выполнении 2х и более приложений... Это можно проверить, конечно, но мне бы очено хотелось услышать мнения людей, которые уже сталкивались с этой проблемой.
← →
Deniz (2003-10-02 08:29) [1]"... Ведь названия у транзакций одинаковые ..."
В реальности такой проблемы НЕТ, и названия используются только для твоего приложения, при запуске более 1 приложения, даже на одном копьютере, свои транзакции. Start + Commit несколько раз и каждый раз будет НОВОЕ значение идентификатора транзакций в БД. Если правильно(по логике программы) расставил уровни изоляции, то проблем не будет даже с 100 приложениями
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.10.23;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.01 c