Я хочу, чтобы триггер запускался после каждой вставленной записи.
Эта проверка работает нормально, если у меня есть простая вставка, подобная этой:
insert into g_dossier values
(112334, 'BBT', 'LPO','TTS','Y') ;
Однако, когда этокак массовая вставка, как это:
INSERT INTO g_piece(
refpiece,
typpiece,
class_piece
group_piece
flag_piere)
SELECT :new.element_num,
PROC_TYPE,
DECODE( piece_it, 'F', 'FTTR', 'N', 'FTTR', NULL ),
DECODE( piece_it, 'T', 'TTSN', 'N', 'TTSN', NULL ),
'N'
FROM t_elements
WHERE :new.db_piece_flag = 'Y';
Триггер мутирует.Я хочу, чтобы проверка также работала, когда выполняется как массовая вставка.
Запрос, вызывающий эту проблему,
SELECT COUNT(*)
INTO existing_cmcl_cnt
FROM g_piece cmcl
WHERE cmcl.class_piece= :new.class_piece
Проблема заключается в том, что этот запрос вызывается в триггере, применяемом к тому жестол "г_шт".Когда я продолжаю простую вставку (вставка в значения g_piece (...)), у меня нет этой проблемы.
Как я могу избежать этой проблемы?Спасибо.