Текущий архив: 2003.05.29;
Скачать: CL | DM;
Вниз
BEFORE insert Найти похожие ветки
← →
_Narayan_ (2003-05-11 10:04) [0]как в триггере типа "BEFORE insert" отменить этот самый insert
(т.е. запретить вставку) ?
← →
Alexandr © (2003-05-11 10:34) [1]exception ?
← →
_Narayan_ (2003-05-11 10:41) [2]exception это понятно, а более гуманного способа нет ?
← →
Alexandr © (2003-05-11 11:11) [3]а что ты подразумеваешь под гуманностью в написании ПО?
ась?
← →
_Narayan_ (2003-05-11 12:43) [4]ИМХО лучше мягко отменить, чем жёстко прервать
← →
Alexandr © (2003-05-11 12:56) [5]о чем ты?
← →
_Narayan_ (2003-05-11 13:30) [6]о том что лучше If (условие) Then DO_NOTHING
чем If (условие) Then EXCEPTION ...
Вообще меня интересует можно ли в триггере отменить действие по которому он вызывается, и как это сделать.
(ни то что бы EXCEPTION мне не нравится, просто хотелось бы знать и другие варианты)
← →
Alexandr © (2003-05-11 13:38) [7]как это отменить? Зачем? Куда?
Вообщем, по-другому никак.
Ну вообще-то есть один способ... Но лучше так не делать.
← →
_Narayan_ (2003-05-11 17:22) [8]а всётаки, что за способ ?
← →
Proton © (2003-05-12 07:15) [9]Из хелпа
procedure TForm1.ClientDataSet1BeforePost(DataSet: TDataSet);
begin
if DBEdit1.Text = "" then
Abort;
end;
← →
VAleksey © (2003-05-12 08:54) [10]Эксепшн - это вполне нормальный способ.
← →
Anatoly Podgoretsky © (2003-05-12 09:03) [11]Отказ от записи логически это и есть исключение
← →
Medvedka (2003-05-12 16:02) [12]Лучше всего не пользоваться режимом AutoEdit=True в DataSource - дальше дело техники. Если разрешено, то делаешь Insert, или любую другую операцию, и что либо другое в противном случае. Никаких исключений и ни каких Абортов!!! Так просто реализуется организация доступа к любым операциям в программе...
← →
_Narayan_ (2003-05-12 21:56) [13]Всем спасибо.
Medvedke тоже, хотя я DataSource в глаза не видел =) .
Страницы: 1 вся ветка
Текущий архив: 2003.05.29;
Скачать: CL | DM;
Память: 0.49 MB
Время: 0.017 c