Oracle 12c теперь имеет встроенную поддержку JSON :
База данных Oracle изначально поддерживает данные JavaScript Object Notation (JSON) с функциями реляционной базы данных, включая транзакции, индексацию, декларативные запросы и представления
Данные JSON и данные XML можно использовать в базе данных Oracle аналогичным образом.В отличие от реляционных данных, оба могут храниться, индексироваться и запрашиваться без какой-либо необходимости в схеме, определяющей данные.Oracle Database изначально поддерживает JSON с функциями реляционной базы данных, включая транзакции, индексацию, декларативные запросы и представления.
Данные JSON часто хранятся в базах данных NoSQL, таких как Oracle NoSQL Database и Oracle Berkeley DB.Они позволяют хранить и извлекать данные, которые не основаны на какой-либо схеме, но не предлагают строгие модели согласованности реляционных баз данных.
Чтобы компенсировать этот недостаток, иногда используется реляционная база данных параллельно сбаза данных NoSQL.Приложения, использующие данные JSON, хранящиеся в базе данных NoSQL, должны сами обеспечить целостность данных.
Собственная поддержка JSON Oracle Database устраняет такие обходные пути.Он предоставляет все преимущества возможностей реляционной базы данных для использования с JSON, включая транзакции, индексацию, декларативные запросы и представления.
Запросы к базе данных Oracle являются декларативными.Вы можете объединить данные JSON с реляционными данными.И вы можете проецировать данные JSON реляционно, делая их доступными для реляционных процессов и инструментов.Вы также можете запросить из базы данных данные JSON, которые хранятся вне базы данных во внешней таблице.
Вы можете получить доступ к данным JSON, хранящимся в базе данных, так же, как и к другим данным базы данных, включая использование OCI., .NET и JDBC.
В отличие от данных XML, которые хранятся с использованием типа данных SQL XMLType, данные JSON хранятся в базе данных Oracle с использованием типов данных SQL VARCHAR2, CLOB и BLOB.Oracle рекомендует всегда использовать проверочное ограничение is_json, чтобы убедиться, что значения столбцов являются действительными экземплярами JSON