declare
var1 XMLTYPE;
var2 XMLTYPE;
var3 XMLTYPE;
var4 XMLTYPE;
Begin
var1 := XMLTYPE('<START>') ;
var2 := XMLTYPE('<DOCUMENT><TITLE>Mr.</TITLE>');
var3 := XMLTYPE('<NAME>Mr.</NAME></DOCUMENT>');
var4 := XMLTYPE('</START>') ;
end;
如何连接上述XMLTYPE变量?
谢谢。答案 0 :(得分:1)
您的示例将无法编译,因为没有字符串是有效的XML文档。 (您将获得ORA-31011:XML解析失败)。
您可以将每个片段放在VARCHAR2中,然后在XMLTYPE函数中连接它们:
declare
var1 varchar2(32);
var2 varchar2(32);
var3 varchar2(32);
var4 varchar2(32);
varx xmltype;
Begin
var1 := '<START>';
var2 := '<DOCUMENT><TITLE>Mr.</TITLE>';
var3 := '<NAME>Mr.</NAME></DOCUMENT>';
var4 := '</START>' ;
varx := xmltype(var1 || var2 || var3 || var4);
dbms_output.put_line(varx.getStringVal());
end;
从最后一行可以看出,方法&#39; getStringVal()&#39;将返回XML的varchar2值。