Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Jak przeanalizować xml według xmltable podczas korzystania z przestrzeni nazw w xml(Oracle)

Na podstawie tej odpowiedzi

Powinno być tak:

declare    
  v_xml clob;    
begin    
  v_xml := '<?xml version="1.0" encoding="utf-8"?>    
  <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">    
    <soap:Body>    
      <addResponse xmlns="http://tempuri.org/">    
        <addResult>20</addResult>    
      </addResponse>    
    </soap:Body>    
  </soap:Envelope>';    
  for c in (select results    
              from xmltable(xmlnamespaces(default 'http://tempuri.org/',    
                                          'http://schemas.xmlsoap.org/soap/envelope/' as    
                                          "soap" ),    
                            'soap:Envelope/soap:Body/addResponse' passing    
                            xmltype(v_xml) columns results varchar(100) path    
                            './addResult')) loop    
    dbms_output.put_line('the result of calculation is : ' || c.results);    
  end loop;    
end;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dlaczego nie możemy użyć silnego kursora ref z dynamiczną instrukcją SQL?

  2. Zrozumienie Javy Oracle na Macu

  3. Zwiększenie grupy dysków VOTE w ASM dla aktualizacji GI 12.2

  4. Potrzebujesz pomocy z połączeniem z bazą danych i kodem zapytania

  5. Oracle XMLTable — pobieranie kolumny z węzła nadrzędnego