我想将XML转换为CLOB并将其保存在表中。 DB的版本是Oracle 9.2.0.8。 这就是我创建XML的方式。Oracle xml_dom.writeToClob返回错误的字符集
DECLARE
p dbms_xmlparser.parser;
xml_doc dbms_xmldom.domdocument;
BEGIN
p := dbms_xmlparser.newParser;
dbms_xmlparser..parseBuffer(p, '<?xml version="1.0" encoding="'||codepage||'"?>');
d := dbms_xmlparser.getDocument(p);
...
END;
但将XML转换为CLOB的cyrilic字符成为变量v_xml_clob不可读后:
v_xml_clob clob;
DBMS_LOB.createtemporary (v_xml_clob, TRUE);
dbms_xmldom.writeToClob(xml_doc , v_xml_clob);
但是,当我写的XML文件中的所有正常:dbms_xmldom.writeToFile(xml_doc , PATH); 这是文字的例子这是越来越错误:
Сберегательные депозиты резидентов - национальная валюта
is becoming
бсх№хурђхыќэћх фхяючшђћ №хчшфхэђют - эрішюэрыќэрџ трыўђр
请帮我解决这个问题。
2013-01-09
Daler
+1
原始字节在Windows-1251编码,但结果他们被视为ISO-8859-5。这有帮助吗?你可以在你的代码的某个地方查看,你没有显示它们。 –
+0
谢谢你的帮助。解决了它 –