오라클의 XDB를 처음 접했을 때 특히 데이터베이스 테이블에서 XML 출력을 생성하는 데 익숙했으며 9i (Oracle9i Enterprise Edition 릴리스 9.2.0.5 .0 - 생산)에서 11g (Oracle Database 11g Enterprise Edition 릴리즈 11.2.0.2.0 - 64 비트 생산).Oracle XDB에서 제어 문자 이스케이프
select xmlelement("test", test) from (select 'a' test from dual);
이 작동하고 저를 제공합니다 : 여기 데 문제를 보여줍니다 작은 테스트 케이스의
I '는'잘못된 문자를 들면, 스왑 그러나 11g의, 경우<test>a</test>
U + 0013으로 다음과 같은 오류가 발생합니다.
9i 미만에서는 동일한 오류없이 오류없이 작동합니다.
분명히 이상적인 대답은 컨트롤 문자가 XML로 변환하려고하는 간단한 문자 데이터에 들어가는 것을 방지하기위한 일부 유효성 검사를 수행하는 것입니다.하지만 불행히도 내가하고있는 범위를 벗어납니다.
다른 사람이 경험 한 내용입니까? 그렇다면 내 XML 생성 스크립트로 변경할 수있는 간단한 변경 사항이 있습니까? 아니면 다른 종류의 정리를 수행해야합니까? 또는 문제가 발생한 경우 드물게 수동으로 문제를 해결할 수 있습니다 (내 필요에 대해 합리적으로 합당한 옵션 일 수 있음).
감사합니다.