CftClub.ru
Клуб специалистов ЦФТ-Банк

Объекты ORACLE

 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Мастер-класс от Участников Клуба
Предыдущая тема :: Следующая тема  
Автор Сообщение
De Mian
Участник со стажем
Неподтвержденный


Вступление в Клуб: 26.09.2008
СообщениеВт Dec 24, 2019 09:45   Объекты ORACLE Ответить с цитатой
Полезность: Нет оценки
Всем привет. тема не относится к ЦФТ. Но я только на этом тематическом форуме зарегистрирован. так что спрошу тут.

Может кто-скинуть почитать материал объясняющий вот это.
Интуитивно я понимаю почему так работает, но хотелось бы более полно понимать механику.

Объекты живут так в своей объектной природе :
1) JSON_ELEMENT_T
2) JSON_OBJECT_T under JSON_ELEMENT_T
3) JSON_ARRAY_T under JSON_ELEMENT_T


Код:
DECLARE
   P_JSON1   SYS.JSON_OBJECT_T := SYS.JSON_OBJECT_T ();

   PROCEDURE PRINT (P_JSON IN OUT NOCOPY SYS.JSON_ELEMENT_T)
   IS
   BEGIN
      P_JSON := SYS.JSON_ARRAY_T ();

      IF P_JSON IS OF (JSON_OBJECT_T)
      THEN
         DBMS_OUTPUT.put_line ('1-----------JSON_OBJECT_T');
      END IF;

      IF P_JSON IS OF (JSON_ARRAY_T)
      THEN
         DBMS_OUTPUT.put_line ('2-----------JSON_ARRAY_T');
      END IF;
   END;
BEGIN
   PRINT (P_JSON1);
END;


OUTPUT : 1-----------JSON_OBJECT_T

Соответсвенно другой эффект , если определить P_JSON1 как SYS.JSON_ELEMENT_T
и\или убрать опцию NOCOPY
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Мастер-класс от Участников Клуба Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru