create or replace procedure pro_str_json(
o_code out int,
i_str in VARCHAR2
)
is
---------------------------------------------------------------------------
jsonObj CLOB;
v_jsonStr VARCHAR2(4000);
v_p json;
v_id NUMBER;
v_name VARCHAR2(100);
begin
o_code := 1;
--jsonStr := '[{"id":"1","open":"false","pId":"11","name":"A部门"},{"id":"2","open":true,"pId":"22","name":"B部门"}]';
--jsonStr := replace(replace(jsonStr,'[',''),']','');
v_jsonStr := '{"id":"1","open":"false","pId":"11","name":"A部门"}';
v_p := json(v_jsonStr);
v_name := json_ext.get_string(v_p,'name');
/*for i in 1..5 loop
DBMS_OUTPUT.PUT_LINE(substr(jsonStr,1500*(i-1)+1,1500));
end loop;*/
DBMS_OUTPUT.PUT_LINE('name:'||v_name);
exception
when others then
o_code := -1;
end pro_str_json;