通过kettle采集数据时,表输入的组件,查询报错。
ORA-27163: out of memory
ORA-06512: at “SYS.XMLTYPE”, line 272
ORA-06512: at line 1
通过
ALTER SESSION SET EVENTS ‘31156 trace name context forever, level 0x400’;
修改会话配置
或直接修改system配置
ALTER system SET EVENTS ‘31156 trace name context forever, level 0x400’。
即可。
如果没有ALTER system权限,则在kette中修改数据库连接,在高级中添加,这样就直接ALTER当前会话(SESSION )
ALTER SESSION SET EVENTS ‘31156 trace name context forever, level 0x400’;
CLOB转XMLTYPE,建议自定义函数:
CREATE OR REPLACE FUNCTION DW_WZWJW.CLOB_TO_XMLTYPE(str IN CLOB) RETURN XMLTYPE IS
v_str XMLTYPE;
BEGIN
BEGIN
SELECT XMLTYPE(str) INTO v_str FROM DUAL;
EXCEPTION
WHEN others THEN
RETURN XMLTYPE(‘<空>空</空>’);
END;
RETURN v_str;
END;
这样可以直接避免XML格式等问题。