我有使用 apex_json 构建 json 的情况,代码示例对此进行了解释。问题是
apex_json.get_varchar2('w')
返回 null,即使在我检查了 apex_json.g_values
之后也是如此。任何人都可以给我任何提示吗?
代码:
declare
v_var varchar2(222);
begin
apex_json.initialize_clob_output;
APEX_JSON.open_object;
APEX_JSON.write('w', 'no errors');
APEX_JSON.close_object;
V_VAR := nvl(apex_json.get_VARCHAR2(p_path=>'w',p_values=>apex_json.g_values), '--');
DBMS_OUTPUT.PUT_LINE('w value is: '|| V_VAR);
DBMS_OUTPUT.PUT_LINE(apex_json.get_clob_output( p_free => true ));
end;
输出:
w value is: --
{
"w":"no errors"
}
您无法一步完成。写入 json,然后再次解析它:
DECLARE
l_json_val CLOB;
BEGIN
apex_json.initialize_clob_output;
apex_json.open_object;
apex_json.write(
'w'
,'no errors'
);
apex_json.close_object;
l_json_val := apex_json.get_clob_output(p_free => TRUE);
dbms_output.put_line(l_json_val);
APEX_JSON.parse(l_json_val);
dbms_output.put_line(nvl(apex_json.get_VARCHAR2(p_path=>'w',p_values=>apex_json.g_values), '--'));
END;
/
{
"w":"no errors"
}
no errors
PL/SQL procedure successfully completed.