Привет здесь код для триггера, и он имеет цикл for. Когда спусковой механизм срабатывает (вставки или обновления), есть еще одна таблица данных должна включать в себя это MICL_SUPкак вставить nextval для запуска внутри цикла for
OPEN projMgrsCursor;
LOOP
FETCH projMgrsCursor INTO projMgr;
select micl_sup_id_seq.nextval into SUPID from dual;
insert into MICL_SUP VALUES ((SUPID), (SELECT SYSDATE FROM DUAL), :NEW.ENTRYADDEDBY_EMP_NO, 3000, 0,projMgr, NULL,:NEW.EMP_NO);
END LOOP;
CLOSE projMgrsCursor;
Это структура таблицы. Sup_ID
первичный и уникальный ключ. Я не могу делать какие-либо смены в структуре таблицы
SUP_ID -primary key
ASSIGNED_DATE
ASSIGNED_BY_EMP_NO
AMOUNT_LIMIT
IS_OVVERRIDDEN
SUP_EMP_NO
RTD_EMP
EMP_NO
Чтобы ввести sup_ID я использую select micl_sup_id_seq.nextval into SUPID from dual;
, но когда я запускаю этот код есть ошибка "RA-00001: unique constraint violated"
(это не ошибка компиляции) Есть ли другой способ добавить sup_ID ?? где я ошибся? Просьба помочь мне Im собираюсь потерять свою работу из-за этот триггер и Im новичок спасибо заранее Экстренной помощи необходимой этого вопрос связан с этим триггером PlSQL trigger error ORA-0000 ORA-06512:
Вы можете просто дать 'вставьте в MICL_SUP VALUES ((micl_sup_id_seq.nextval), (SELECT SYSDATE FROM DUAL), ...' в самой петле. Нет необходимости в отдельной переменной. – Rachcha
nothar ошибка компиляции PL/SQL: заявление SQL игнорируется PL/SQL: ORA-00933: команда SQL не выполнена должным образом – cHaNkX
вы уверены, что в таблице нет другого уникального поля? – Sebas