有一张表XDOCUMENT的一个字段XCONTENT是CLOB类型的,现在我要把B表中一列值name插入到A表的XCONTENT中,写了如下语句:SELECT REPLACE(X.XCONTENT.GETSTRINGVAL(),
               '</COLS>',
               '<name><![CDATA["+B.name+"]]></name></COLS>')
FROM XDOCUMENT X,(SELECT B.name,B.id from B) B
WHERE X.id = B.id运行以后,我发现插入的为<name><![CDATA["+B.name+"]]></name>,
而不是具体的名字例如:<name><![CDATA[刘明]]></name>,
请问应该如果修改,谢谢!

解决方案 »

  1.   

    SELECT REPLACE(X.XCONTENT.GETSTRINGVAL(),
                  ' </COLS>',
                  ' <name> <![CDATA['||B.name||']]> </name> </COLS>')
    FROM XDOCUMENT X,(SELECT B.name,B.id from B) B
    WHERE X.id = B.id 
      

  2.   

    谢谢welyngj !如果要把<name> <![CDATA['||B.name||']]> </name> </COLS>换成两行显示换行符应该怎么加?
    比如说换成:
    <name> <![CDATA['||B.name||']]> </name> 
    </COLS>
      

  3.   

    SELECT REPLACE(X.XCONTENT.GETSTRINGVAL(),
                  ' </COLS>',
                  ' <name> <![CDATA['||B.name||']]> </name> '||chr(10)||'</COLS>')
    FROM XDOCUMENT X,(SELECT B.name,B.id from B) B
    WHERE X.id = B.id