Форум: "Базы";
Текущий архив: 2004.07.04;
Скачать: [xml.tar.bz2];
Внизкорректность вновь сохраненных данных Найти похожие ветки
← →
avgur (2004-06-10 15:29) [0]ВЫДЕРЖКА из другого форума:
> Имеется кешированный датасет (TQuery). Открываем транзакцию методом StartTransaction компонента TDatebase. После сохранения в базу методом ApplyUpdate (компонента TQuery) запускается хранимая процедура, которая проверяет корректность вновь сохраненных данных. В определенном случае(сохранены неверные данные) процедура возвращает код ошибки - делается
откат транзакции RollBack компонента TDatebase.
Как эту процедуру организовать, подскажите ....
← →
Курдль © (2004-06-10 15:34) [1]Это как раз тот случай: "Я сделал одну фишку, а она не работает. В чем моя ошибка"?
← →
bushmen © (2004-06-10 15:57) [2]>Открываем транзакцию методом StartTransaction компонента >TDatebase. После сохранения в базу методом ApplyUpdate
По-моему, какая-то каша у Вас в голове.
← →
Sandman25 © (2004-06-10 16:01) [3]У процедуры должнен быть Isolation level = dirty read
← →
Курдль © (2004-06-10 16:04) [4]
> У процедуры должнен быть Isolation level = dirty read
Зачем?
← →
bushmen © (2004-06-10 16:14) [5]А целиком постановку задачи можно прочитать?
← →
Johnmen © (2004-06-10 16:16) [6]>Как эту процедуру организовать, подскажите ....
Примерно так:
1. Получаем значения вх.параметров
2. Анализируем их на корректность.
3. В случае некорректности генерим ексепшн.
:)))
← →
Соловьев © (2004-06-10 16:19) [7]А почему такую логику нельзя в триггере сделать? зачем ХП?
← →
Sandman25 © (2004-06-10 16:27) [8][4] Курдль © (10.06.04 16:04)
Пока транзакция не подтверждена, записи недоступны для обычного read commited.
← →
Курдль © (2004-06-10 16:33) [9]
> Sandman25 © (10.06.04 16:27) [8]
> Пока транзакция не подтверждена, записи недоступны для обычного
> read commited.
Внутри одной транзакции все доступно.
← →
Соловьев © (2004-06-10 16:34) [10]
> Внутри одной транзакции все доступно.
внутри какой транзакции, и кому доступны?
← →
Курдль © (2004-06-10 16:36) [11]Внутри одной тразнакции все изменения доступны тому, кто ее открыл(или в IB это не так?)
← →
Sandman25 © (2004-06-10 17:01) [12][9] Курдль © (10.06.04 16:33)
Я почему-то подумал, что хранимая процедура запускается в другом соединении. Наверное, зря я так подумал. Вы правы.
← →
Курдль © (2004-06-10 17:06) [13]В любом случае - это лишь наши с Вами теоретические изыскания :)
Автор-то нам не шибко помогает.
Я, как и Соловьев © (10.06.04 16:19) [7], склонен считать, что ХП - не очень удачное место для проверки данных.
Начинать надо на клиенте, потом - средствами СУБД (ключами, индексами, констрэйнтами, потом уж триггерами).
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.07.04;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.035 c