在Oracle中使用apex_json包更新json字段

时间:2019-08-07 02:48:21

标签: oracle oracle11g oracle-apex-5.1

我只想使用oracle apex更新json中的值。 首先,我将使用get_number从输入中提取内容,然后需要更新现有列中的值

DECLARE 
    j apex_json.t_values; 
BEGIN 
    apex_json.parse(j, '{"total":83,"netAmmount":65}'); 
    DBMS_OUTPUT.put_line('Total   : ' || APEX_JSON.get_number( 'total'));
    DBMS_OUTPUT.put_line('netAmmount:'||APEX_JSON.get_number( 'netAmmount'));
    -- im looking for something like this below    
  UPDATE t SET json_column = apex_write(APEX_JSON.get_number( 'total'));
END;

请帮助

1 个答案:

答案 0 :(得分:0)

您缺少参数p_value:

DECLARE 
    j apex_json.t_values; 
    v apex_json.t_value; 
BEGIN 
    apex_json.parse(j, '{"total":83,"netAmmount":65}'); 
    v := apex_json.get_value(p_path=>'total',p_values=>j); 
    dbms_output.put_line(v.number_value);

    UPDATE t SET json_column =  v.number_value;
END;