当前位置:网站首页>Combination of Oracle and JSON

Combination of Oracle and JSON

2022-07-01 10:51:00 bisal(Chen Liu)

A lot of people JSON No stranger ,JSON(JavaScript Object Notation) Is a lightweight data exchange format , He was based on ECMAScript(European Computer Manufacturers Association, Developed by the European Computer Association js standard ) A subset of , Use text format completely independent of programming language to store and represent data . A simple and clear hierarchy makes JSON Become the ideal data exchange language . Easy to read and write , At the same time, it is also easy for machine analysis and generation , And effectively improve the network transmission efficiency .

In short ,JSON Is a syntax for storing and exchanging data .JSON The essence is string ,JSON Data is used in language , Whether it's Java、C#, still js, You can use JSON.

JSON Is a set of key value pairs of data objects , stay JavaScript It's inside JavaScript The object of , stay Java The middle is Java Of JSON object ( class /VO).JSON Write the data as the name / It's worth it , name / The value consists of the field name , Followed by a colon and a value , General format , As shown below ,

name={name01:“test1”,name02={ name02:“test2”,name021:“test3”} }

stay JSON in , The value must be one of the following data types ,

  • character string

  • Numbers

  • object (JSON object )

  • Array

  • Boolean

  • Null

JSON The value of cannot be one of the following data types ,

  • function

  • date

  • undefined

Friends with development experience may have used it before XML As a format for data transmission , Here is a XML Examples of data formats ,

8af31a870a6d6feb61b961de83056201.png

This is the use of JSON Show examples of the same data ,

1dde6ac3dc577dbafa0b3f25805f68ae.png

You can see ,JSON Simple grammar format and clear hierarchy are obviously better than XML Easy to read , And in terms of data exchange , because JSON The characters used are more than XML much less , It can greatly save the bandwidth occupied by data transmission , Transmission efficiency , Will be higher than XML.

Oracle from 12c Support from the beginning JSON Storage and retrieval of , Relevant functions have been enhanced in each version , For example, some JSON The limitation of , The allowed length and other features will be improved , for example 12c Description of ,JSON search index Support 64 byte ,

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/adjsn/oracle-json-restrictions.html#GUID-1DB81125-54A7-4CB6-864B-78E0E7E407C9

1bad491234f1e4c75d577d692b3f0e46.png

19c Description of ,JSON search index Has been able to support 255 byte ,

https://docs.oracle.com/en/database/oracle/oracle-database/19/adjsn/oracle-json-restrictions.html#GUID-1DB81125-54A7-4CB6-864B-78E0E7E407C9

6d56fb42a89ae17be6d2672d067729d9.png

So when we use these features , We need to pay attention to the support differences of different versions .

Oracle We can use json_object() Function to convert the search result into JSON, As shown below ,

795812c1b9711354f6461fa4858a4a50.png

You can also customize it key,

8d80dfef4e697db551b51141208312b6.png

You can store the search results as a list ,

ea429630b4c3a4db051c50c66178a926.png

It also supports sorting ,

faa5a755f2eb82709b3eff260402611c.png

Use only json_object(), Each record is a separate json, If you want to generate one for all records json, Can combine json_arrayagg Together with , As shown below ,

277e208008710dac31ada980accf0821.png

But this error is likely to occur , There are many returned record data , Prompt maximum 4000,

264da4cf9da61d594bb4492427b83a7b.png

This is because json_arrayagg() There are two types of returns ,varchar2 and clob, If you don't explicitly specify , It's used varchar2, If the limit is exceeded , You can use clob type , More content will be output ,

https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlrf/JSON_ARRAYAGG.html#GUID-6D56077D-78DE-4CC0-9498-225DDC42E054

ea3643eb29755319bd76d9fd04e38266.png

increase returning clob Clause , You can show ,

0e091df1c692c7499e222a736b6898c5.png

and JSON There are many related functions , If you need to know ,

14d05e8e75f488d680abe17143faa190.png

For some basic JSON Operational requirements ,Oracle It can still be satisfied , This avoids going through procedures or SQL Splicing JSON The operation of , In terms of convenience , There is some help .

Reference material ,

https://baike.baidu.com/item/JSON/2462549?fr=aladdin

https://blog.csdn.net/weixin_44600235/article/details/107630279

Recently updated articles :

How to " grace " avoid MySQL Login tips

Xiaobai studies MySQL - Incremental Statistics SQL The needs of - Scheme of windowed function

List of domestic databases

Xiaobai studies MySQL - The statistical " Be opportunistic "

Xiaobai studies MySQL - Incremental Statistics SQL The needs of

Recent hot articles :

" Red Alert " Game open source code brings us a shock

Article classification and indexing :

official account 1000 Article classification and index

原网站

版权声明
本文为[bisal(Chen Liu)]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/182/202207011049097504.html