PROCEDURE prc_保存配置(prm_data in out long,
prm_appcode OUT NUMBER,
prm_error OUT VARCHAR2) is
xml XMLType;
v_str VARCHAR2(1000);
aClob clob;
begin
prm_appcode := pkg_a_macro.def_ok;
SELECT config INTO aClob FROM config WHERE config_id = 1;
xml := XMLType.createXML(aClob);
xml := xml.extract('/config/modules/module[@id="104"]/item[@id="1"]/insure');
v_str := xml.extract('/insure@code').getStringVal;
DBMS_OUTPUT.PUT_LINE(trim(v_str));
EXCEPTION
WHEN OTHERS THEN
prm_appcode := pkg_a_macro.def_err;
prm_error := ' 保存配置: ' || prm_error || '; ' || SQLERRM;
end prc_保存配置;
通过jdbc是无法保存XMLTYPE类型的。所以只能保存成clob,然后通过create从clob中创建XMLTYPE。