sql >> Database >  >> RDS >> Oracle

XML-parsing in oracle pl/sql

Ik denk dat je hier twee dingen verkeerd hebt:

  • Ten eerste, uw XPath-expressie //@GovernmentCode/ is fout. Het mag geen achterliggende / . hebben , en je wilt niet dat de @ ofwel omdat GovernmentCode is een element, geen attribuut.

  • Ten tweede moet u de XML-naamruimtedeclaratie specificeren in uw aanroep naar EXTRACTVALUE evenals in uw oproep tot EXTRACT .

Als u deze wijzigingen aanbrengt, blijft de volgende code over. Ik heb het even snel getest en het leek te werken:

SELECT EXTRACTVALUE (VALUE (xml_list), '//GovernmentCode', 'xmlns="http://www.irs.gov/efile"') AS SysID
  INTO lv_transid      
  FROM TABLE (
            XMLSEQUENCE (
               EXTRACT (in_xmlclob, '/AckTransmission/Acknowledgement',
                        'xmlns="http://www.irs.gov/efile"'))) xml_list;   


  1. SQL Meerdere LIKE-instructies

  2. Kan ik transactie-achtige mogelijkheden gebruiken in MySQL-trigger?

  3. Hoe u het huidige Auto_Increment-volgnummer voor MySQL / MariaDB-tabel kunt krijgen

  4. PHP PDO - Aantal rijen