Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.04;
Скачать: CL | DM;

Вниз

корректность вновь сохраненных данных   Найти похожие ветки 

 
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;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.036 c
11-1076271391
ecm
2004-02-08 23:16
2004.07.04
Menu и изменение DefaultItem


1-1087714730
Лёха
2004-06-20 10:58
2004.07.04
нахождение файла


1-1087385031
Duncan
2004-06-16 15:23
2004.07.04
Проблема с освобождением памяти


14-1087430642
R
2004-06-17 04:04
2004.07.04
Ваше право на вашу же программу


4-1085303364
ГудБой
2004-05-23 13:09
2004.07.04
Как программно сделать Sussped? NTReboot;