您好,登錄后才能下訂單哦!
本篇內(nèi)容介紹了“oracle怎么解析json字符串”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
DECLARE l_json_str VARCHAR2(4000); l_json json; l_year VARCHAR2(10); l_month VARCHAR2(10); TYPE arrays_data_rec IS RECORD( id NUMBER ,code VARCHAR2(30) ,NAME VARCHAR2(100)); TYPE arrays_data_tab IS TABLE OF arrays_data_rec INDEX BY BINARY_INTEGER; l_arrays_tab arrays_data_tab; l_bodylist json_list; --json列表 l_arrays_json json; --用于解析每一個(gè)數(shù)組信息 BEGIN l_arrays_tab.delete; l_json_str := '{ "year": "2019", "month":"05", "strArray": [{ "id": 1, "code": "CODE1", "name": "NAME1" },{ "id": 2, "code": "CODE2", "name": "NAME2" },{ "id": 3, "code": "CODE3", "name": "NAME3" }] }'; BEGIN --將字符串轉(zhuǎn)化為json格式 l_json := json(l_json_str); --獲取json的值 l_year := json_ext.get_string(l_json ,'year'); l_month := json_ext.get_string(l_json ,'month'); dbms_output.put_line('year:' || l_year || '--month:' || l_month); --json數(shù)組初始化 l_arrays_json := json(); --將strArray數(shù)組存至l_bodylist對(duì)象中 l_bodylist := json_ext.get_json_list(l_json ,'strArray'); IF l_bodylist IS NOT NULL THEN --循環(huán)數(shù)組,將值寫入內(nèi)存表中 FOR idx IN 1 .. l_bodylist.count LOOP l_arrays_json := json(l_bodylist.get(idx)); --注意:根據(jù)傳入的值的數(shù)據(jù)類型進(jìn)行對(duì)應(yīng)的轉(zhuǎn)換,不然會(huì)取不到值 l_arrays_tab(idx).id := json_ext.get_number(l_arrays_json ,'id'); l_arrays_tab(idx).code := json_ext.get_string(l_arrays_json ,'code'); l_arrays_tab(idx).name := json_ext.get_string(l_arrays_json ,'name'); dbms_output.put_line(l_arrays_tab(idx).id || '--' || l_arrays_tab(idx).code || '--' || l_arrays_tab(idx).name); END LOOP; END IF; EXCEPTION WHEN OTHERS THEN dbms_output.put_line('JSON格式轉(zhuǎn)換異常!'); END; EXCEPTION WHEN fnd_api.g_exc_error THEN dbms_output.put_line('error:' || SQLCODE || '--' || SQLERRM); WHEN fnd_api.g_exc_unexpected_error THEN dbms_output.put_line('Unexpected_error.' || SQLCODE || '--' || SQLERRM); WHEN OTHERS THEN dbms_output.put_line('Other error:' || SQLCODE || '--' || SQLERRM); END;
“oracle怎么解析json字符串”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。