триггер оракула и json_value - PullRequest
1 голос
/ 09 мая 2019

Привет, я хочу сохранить некоторые значения из: new.payload через триггер.

это работает в sql-developer, но не в триггере ...

select json_value('{"timestamp":"2019-05-09T14:00:00Z","value":0,"unit":"W/m²"}', '$.unit') from dual;

'{"timestamp": "2019-05-09T14: 00: 00Z", "value": 0, "unit": "W / m²"} 'is my: new.payload

я пробовал также:

SELECT unit INTO v_unit
    FROM
        json_table(:new.payload, '$'
            columns (
                    timestamp VARCHAR2(80) path '$.timestamp',
                    value NUMBER path '$.value',
                    unit VARCHAR2(80) path '$.unit'
                    )
) jt;

я получаю ошибку ORA-00904: «DECL_OBJ #»; /

(ошибка: ORA-00604: рекурсивная ошибка SQL-уровня 1 ORA-00904: «DECL_OBJ #»:неверный идентификатор)

1 Ответ

2 голосов
/ 09 мая 2019

Это дикое предположение, но попробуйте это:

1.Открытый разработчик SQL Задайте для параметра идентификаторов PLScope («Инструменты»> «Настройки»> «База данных»> «Компилятор PL / SQL> идентификаторы PLScope») значение «Все» - «Нет».

  1. Закройте и откройте SQL Developer
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...