Ho problemi con Oracle SQL e XML.Analisi di XML con spazi dei nomi sconosciuti in Oracle SQL
Riceverò un sacco di clob di dati XML ben formati da un sistema esterno per analizzare, interpretare e riempire alcune tabelle con. Ho scritto una soluzione usando XMLTable, che è disposto in una vista sulla tabella con la colonna clob xml in questione e alcune informazioni di controllo e roba (mi piacerebbe tenerlo in questo modo).
NAMESPACES mi stanno dando gli incubi. Apparentemente non posso metterli nella clausola xmlnamespaces, perché non posso mai sapere che cosa saranno i. Assurdo! Gli articoli consegnati dello stesso tipo possono avere spazi dei nomi diversi in momenti diversi. Non c'è una lista finita. Neanche xmlns di default è costante.
La migliore soluzione di lavoro che ho escogitato finora è un insieme di regexp_replace (3, per la precisione), che cancella tutti gli spazi dei nomi prima di analizzare. Ma le prestazioni sono un problema colossale.
Sicuramente c'è qualcosa di intelligente che mi manca?
Hai il tuo codice in modo che possiamo aiutarti meglio? – justderb
Oracle applica sicurezza e interrompe qualsiasi chiamata a URL di schema XML esterni, questo significa che tutti gli schemi validi devono essere registrati nel database utilizzando 'DBMS_XMLSCHEMA (schema di registro)', molti schemi sono già registrati nel DB. Tuttavia, se non lo sono, devi ottenere un elenco di questi da tutte le terze parti (invio di XML) e registrarli in Oracle. – Annjawn