Currently I am attending the “Schema less data management using SQL/JSON” session during Oracle OpenWorld. This session demonstrated the new upcoming feature (=not in the current release) in the 12c database which supports JSON data handling in the database. That is, of course, with the nowadays common disclaimer, it probably will, but is not guaranteed by Oracle that they actually also will do so as presented… Nether the less it would be, could be a welcome new functionality. Without going into the flame wars between the XML and JSON communities, JSON is widely used and probably therefor has its merits in current build solutions.
JSON, JavaScript Object Notation has fairly the same kind of structures as XML. Due to it’s growing use JSON support is the logical next step for, in this case the Oracle XMLDB development team, to implement this support in the database. The XMLDB team mentioned the following goals.
There will not be a new datatype, like the XMLType for XML content, but make current datatypes supportive for JSON data, following the current JSON standards, while creating a standard for these relational / JSON needs in a query method currently called SQL/JSON.Oracle’s vision in all of this is to be flexible enough and not support only one JSON datatype. Therefore the multiple datatype storage options.
The streaming method will, for example support the JSON_VALUE operator, which enable you to access and query the JSON data and (a bit like the XMLTABLE operator) return the data in the needed data format.
Another operators will be, behold the disclaimer of course, JSON_QUERY, JSON_EXISTS, JSON_TABLE rowsource…
The following show a few examples of the demonstrations given on how it will, could work, in one of the next database versions…