Ответы пользователя по тегу Oracle
  • Почему возникает ошибка в sql-триггере (БД Oracle)?

    @Vergileey Автор вопроса
    Как я смог установить ошибка возникает в этих запросах:
    SELECT MAX(did) into last_id from  DEV_OCS.Revisions
            where ((to_char(DINDATE,'dd.mm.yy') < data_reg) or (to_char(DINDATE,'dd.mm.yy') = data_reg)) and (dsecuritygroup = SEQURITYGROUP);
     -- здесь получаем последний id на который был зарегистрирован документ за введенное число или раньше с нужной группой защиты
            SELECT XZID_VKH_NOMER into last_reg_nomer from dev_ocs.docmeta
     where docmeta.did = last_id; --получаем регистрационный номер нужного документа. Вот в этом месте вылетает с ошибкой.


    Если во втором запросе подставить значение индекса документа вместо last_id, то отрабатывает нормально. Если обрабатывать не в триггере, а просто в sql редакторе, то тоже работает. Но я не могу понять почему не работает так как есть.
    Ответ написан