Вниз
Скачать: CL | DM;

Почему не доходит exception   Найти похожие ветки 

← →
YurikGl ©   (2004-03-25 19:29) [0]

Вопрос, видимо, простой.

Имеется триггер в базе Interbase

CREATE TRIGGER ZAMENASPOSOBTRIGGER1 FOR ZAMENASPOSOB BEFORE DELETE POSITION 0 AS
DECLARE VARIABLE TMP INTEGER;
BEGIN
FOR SELECT NULL FROM DopustZamena
 WHERE IdZamenaSposob = old.IdZamenaSposob into :TMP
DO
 EXCEPTION  NEW_EXCEPTION;
END

Он запрещает удаление записи в материнской таблице ZAMENASPOSOB если есть соответсвующие записи в дочерней DopustZamena.

Таблицы, кроме триггера ничем не связаны.

Если удалять через IbExpert или SQLExlplorer, то он срабатывает и при наличии записи в дочерней таблице DopustZamena блокирует удаление и выдает сообщение об ошибке.
Но если удалять через мое приложение SimpleDataSet2.Delete, то Grid делает вид, что запись удалена, сообщений не выдает, а на сервере не удаляет.

Работаю через DBExpress  SQLConnection+SimpleDataSet+DataSource+EhGrid

Где что выставить надо?


← →
YurikGl ©   (2004-03-25 20:33) [1]

Неужели никто не знает?


← →
Sergey Masloff   (2004-03-25 22:23) [2]

Насколько помню DBExpress же дает только однонаправленые курсоры. И чтобы работать с гридом они должны где-то кешироваться. Соответственно должен быть метод применить изменения к базе. Пока ты его не вызовешь в базе ничего не меняется и никаких исключений ты не получишь. Это вкратце. Подробнее не скажу потому что с этим Г (DBExpress) не работаю и не собираюсь. Но то что я даю тебе верное направление - 99.99%


← →
Sergey Masloff   (2004-03-25 22:24) [3]

Ага, он потомк TCustomClientDataSet. Эплай апдейтс Пушкин вызывать будет?


← →
YurikGl ©   (2004-03-25 22:44) [4]

В принципе, проблему я решил отказавшись от методов типа DataSet.delete. Пользую SQL-комманды и все Ok.

Все равно спасибо.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.021 c
3-1080217013
Walter
2004-03-25 15:16
2004.04.25
DBGrid и буфер обмена


4-1076151713
Sanik
2004-02-07 14:01
2004.04.25
CD-ROM


1-1081655025
Aramis
2004-04-11 07:43
2004.04.25
Нестандартные курсоры


14-1080844613
gn
2004-04-01 22:36
2004.04.25
для тех кто в ещё может! :-)


11-1064815249
bfg1000ke
2003-09-29 10:00
2004.04.25
Реестр




   Наверх