Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
要在PL/SQL中连接两个XML元素,请连接两个XMLTYPE元素 声明 var1-XMLTYPE; var2-XMLTYPE; var3-XMLTYPE; var4-XMLTYPE; 开始 var1:=XMLTYPE(“”); var2:=XMLTYPE('Mr.); var3:=XMLTYPE('Mr.); var4:=XMLTYPE(“”); 结束;_Xml_Plsql - Fatal编程技术网

要在PL/SQL中连接两个XML元素,请连接两个XMLTYPE元素 声明 var1-XMLTYPE; var2-XMLTYPE; var3-XMLTYPE; var4-XMLTYPE; 开始 var1:=XMLTYPE(“”); var2:=XMLTYPE('Mr.); var3:=XMLTYPE('Mr.); var4:=XMLTYPE(“”); 结束;

要在PL/SQL中连接两个XML元素,请连接两个XMLTYPE元素 声明 var1-XMLTYPE; var2-XMLTYPE; var3-XMLTYPE; var4-XMLTYPE; 开始 var1:=XMLTYPE(“”); var2:=XMLTYPE('Mr.); var3:=XMLTYPE('Mr.); var4:=XMLTYPE(“”); 结束;,xml,plsql,Xml,Plsql,如何连接上述XMLTYPE变量 谢谢。您的示例将无法编译,因为所有字符串都不是有效的XML文档。(您将获得ORA-31011:XML解析失败) 您可以将每个片段放在一个VARCHAR2中,然后将它们连接到XMLTYPE函数中: declare var1 XMLTYPE; var2 XMLTYPE; var3 XMLTYPE; var4 XMLTYPE; Begin var1 := XMLTYPE('<START>') ; var2 := XMLTYPE('<DOCUMENT&g

如何连接上述XMLTYPE变量


谢谢。

您的示例将无法编译,因为所有字符串都不是有效的XML文档。(您将获得ORA-31011:XML解析失败)

您可以将每个片段放在一个VARCHAR2中,然后将它们连接到XMLTYPE函数中:

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;
声明
var1-varchar2(32);
var2-varchar2(32);
var3-varchar2(32);
var4-varchar2(32);
varx-xmltype;
开始
var1:='';
var2:=“先生”;
var3:=“先生”;
var4:='';
varx:=xmltype(var1 | | var2 | | var3 | | var4);
dbms_output.put_行(varx.getStringVal());
结束;

从最后一行可以看到,方法“getStringVal()”将返回XML的varchar2值。

我还想知道如何将varchar2转换为XMLTYPE,将XMLTYPE转换为varchar2。。上面的变量将给出错误,因为XMLTYPE变量应该有开始和结束标记,并且格式正确。您不能“连接”XML,因为它对您没有意义。如果
A
B
是两个格式良好的XML文档,那么“
A | | B
”本身就不会格式良好,因为它有两个根元素。为什么您认为需要能够以这种方式连接XML文档?
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;