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

Вниз

Вопрос по тригерам   Найти похожие ветки 

 
Alpine   (2006-04-25 14:31) [0]

Доброго времени суток. Уважаемые мастаки, у меня такая задача, у меня есть две таблицы, связанные между собой по ключевому полю(связь один ко многим), и есть ещё две таблицы клоны главных(архивные). Мне надо чтобы после удаления записи с одной главной таблицы, эта запись(удалённая) переходила в другую(архивную) таблицу и соответветственно с подчиненной таблицы тоже записи перемещалмсь в другую таблицу, дабы не потерять целостность. Возможно ли это сделать с помощью тригера ? Можно ли в тригере обратиться к текущей записи(то есть той на которой стоит курсор) ?

Заранее благодарен.


 
Sergey13 ©   (2006-04-25 14:38) [1]

>Можно ли в тригере обратиться к текущей записи(то есть той на которой стоит курсор) ?
Где утебя стоит курсор тригер понятия не имеет. Он работает по факту указанного события с 1 записью. Старое значение поля идет с префиксом old новое с new. Доступность старых и новых значений зависит от события. У Delete, например, доступны только старые значения.


 
RomanH ©   (2006-04-25 15:41) [2]

Перед удалением из таблицы Men текущая зпись помещается MenDel
CREATE TRIGGER BEF_DEL_MEN FOR MEN
ACTIVE BEFORE DELETE POSITION 0
as
begin
 insert into "MENDEL"
 ("LMENID","LMFAM","LMNAME","LMOTCH","LMPASSWORD","LMSTATUS","LMNIC")
 values(old.MENID,old.MFAM,old.MNAME,old.MOTCH,old.MPASSWORD,old.MSTATUS,old.MNIC );
end


 
Sergey13 ©   (2006-04-25 15:47) [3]

2[2] RomanH ©   (25.04.06 15:41)
Тут же надо перетаскивать и подчиненные записи. Иначе ограничения целостности могут не дать.


 
RomanH ©   (2006-04-25 16:01) [4]

Да надо подумать.



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

Текущий архив: 2006.06.18;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.083 c
2-1148902961
Ezorcist
2006-05-29 15:42
2006.06.18
Написание компонента от TClientSocket


1-1147515408
sinus
2006-05-13 14:16
2006.06.18
Кнопка на таскбаре


15-1148256877
vagra
2006-05-22 04:14
2006.06.18
Конец строки в Windows и Unix


15-1148270549
divinus
2006-05-22 08:02
2006.06.18
Евровидение


3-1145770856
Express
2006-04-23 09:40
2006.06.18
Стандартное исключение каскадного удаления