extract data from blob field containing xml data big

I'm working on Oracle 11 g 2, 11.0.2.0.3. UNIX database server.

my oracle instance receive large xml data service web ftp, I put this file as blob in a table called TBL_ALERT_XML (ID_ALERT NUMBER, DATE of the TIMESTAMP_ALERT, ALERT_XML BLOB).

My goal is to get data of BLOB content e file put in one or more other tables.

I try with the opening of a cursor on

SELECT XMLTYPE (UTL_RAW.cast_to_varchar2 (ALERT_XML)). Extract (' alerts/points/point / / Text () ') threads

OF TBL_ALERT_XML

without any filter on ID_ALERT.

But I get the error:

ORA-22835: buffer too small for to CHAR CLOB or BLOB to RAW conversion



Please help me, thank you very much

Because the web service is deployed in python and my co worker is not able to call a stored procedure with the parameter xmltype, but only with the setting of the BLOB.

If you can't get around it, so be it. All the less, using CLOB would be better.

However, which prevents you to convert BLOB XMLType entry within the stored procedure and store it in an XMLType column.

To do this, simply use the XMLType of BLOB.

create table tbl_alert_xml)

number of id_alert

date of timestamp_alert

alert_xml xmltype

);

insert into tbl_alert_xml

values)

1

sysdate

xmltype (p_blob

, nls_charset_id ('AL32UTF8') - put the encoding of the file here

)

);

Then, you will be able to execute queries optimized using XMLTABLE.

Tags: Database

Similar Questions

  • Question of feasibility: extract information from the fields to the PDF format

    I explore options to collect answers to a PDF form.  Fields of entries by the user are created, the user saves the form in PDF format and sends the return form.  The data entered by the user entered in the fields can be retrieved electronically?  I hate the very idea of renewing the data entered by the user to get it in electronic format.  For now, the question is ' is it possible - extract the entries by the user of the data in an electronic format?  If possible, then I can begin to explore the format, etc.

    It is worth noting since you stevat from the outset that it may be problematic to rely on email. Much better to send the form just like an HTML form. This needs a professional web programmer to provide web scripts, however. Also PDF forms do not work on some browsers and phones.

    It is easy to assume that the big trick is to design the form. But it's just the 10% above the water. Personally I wouldn't consider PDF forms more due to browser issues. Same Adobe move to a dynamic conversion to HTML forms then why don't no start with a? There is full form service providers that provide tools to collect and analyze. For example forms of Google - create and analyze surveys, free.

  • Extract data from xml zipped files.

    Hello
    I have a table with a blob field and because of space constraints, I save my huge xml file in the format compressed in this blob field.
    Is it possible to extract data from the blob field xml?

    Thank you

    Vincent pek

    Yes.

    Have a look here: http://technology.amis.nl/blog/8090/parsing-a-microsoft-word-docx-and-unzip-zipfiles-with-plsql (be aware, "docx" is also a zip file)

  • SQL error: ORA-31038: invalid number '420,05' when extracting data from XML

    Hello everyone ,

    J’ai créé dieting

    DBMS_XMLSCHEMA. REGISTERSCHEMA (SCHEMAURL = > 'OrdenDetalle.xsd', SCHEMADOC = > ' <? xml version = "1.0" encoding = "UTF?) 8 "? >

    " < xs: schema xmlns: XS =" http://www.w3.org/2001/XMLSchema ">

    < xs: element name = "Monsigniore" >

    < xs: complexType >

    < xs: SEQUENCE >

    < xs: element name = "Quantity" type = "Integer" / >

    < xs: element name = "FechaCreacion" type = "xs: DateTime" / >

    < xs: element name = "Version" type = "xs: String" / >

    < xs: ELEMENT ref = "News" / >

    < / xs: SEQUENCE >

    < / xs: complexType >

    < / xs: element >

    < xs: element name = "News" >

    < xs: complexType >

    < xs: Choice >

    < xs: element name = "OrdenCompra" type = "T_OrdenCompra" / >

    < / xs: Choice >

    < / xs: complexType >

    < / xs: element >

    < name XS: complexType = "T_OrdenCompra" >

    < xs: SEQUENCE >

    < xs: element name = "Code" type = "xs: String" / >

    < xs: element name = "Number" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "CodigoEstado" type = "Integer" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "CodigoLicitacion" type = "xs: String" nillable = "true" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Description" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "CodigoTipo" type = "Integer" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Type" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "TipoMoneda" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "State" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "CodigoEstadoProveedor" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "EstadoProveedor" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: ELEMENT ref = "Fechas" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "TieneItems" type = "Integer" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "PromedioCalificacion" type = "xs: Decimal" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "CantidadEvaluacion" type = "xs: Decimal" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Well" type = "xs: Decimal" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Freighters" type = "xs: Decimal" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "TotalNeto" type = "xs: Decimal" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "PorcentajeIva" type = "xs: Decimal" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Impuestos" type = "xs: Decimal" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Total" type = "xs: Decimal" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Financing" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Country" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "TipoDespacho" type = "Integer" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "FormaPago" type = "Integer" minOccurs = "0" maxOccurs = "1" / >

    < xs: ELEMENT ref = "Comprador" minOccurs = "0" maxOccurs = "1" / >

    < xs: ELEMENT ref = "Proveedor" minOccurs = "0" maxOccurs = "1" / >

    < xs: ELEMENT ref = "Items" minOccurs = "0" maxOccurs = "1" / >

    < / xs: SEQUENCE >

    < / xs: complexType >

    < xs: element name = "Items" >

    < xs: complexType >

    < xs: SEQUENCE >

    < xs: element name = "Quantity" type = "Integer" / >

    < xs: element name = "News" >

    < xs: complexType >

    < xs: SEQUENCE >

    < xs: ELEMENT ref = "Item" minOccurs = "0" maxOccurs = "unbounded" / >

    < / xs: SEQUENCE >

    < / xs: complexType >

    < / xs: element >

    < / xs: SEQUENCE >

    < / xs: complexType >

    < / xs: element >

    < name XS: complexType = "OrdenCompraBusqueda" >

    < xs:complexContent >

    < xs:extension base = "T_OrdenCompra" >

    < / xs:extension >

    < / xs:complexContent >

    < / xs: complexType >

    < xs: element name = "Item" >

    < xs: complexType >

    < xs: SEQUENCE >

    < xs: element name = "Correlativo" type = "Integer" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "CodigoCategoria" type = "Integer" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Category" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "CodigoProducto" type = "Integer" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Product" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "EspecificacionComprador" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "EspecificacionProveedor" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Quantity" type = "xs: Decimal" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Moneda" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    "< xs: element name ="PrecioNeto"type ="XS: Decimal"minOccurs ="0"maxOccurs ="1"/ >

    < xs: element name = "TotalCargos" type = "xs: Decimal" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "TotalDescuentos" type = "xs: Decimal" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "TotalImpuestos" type = "xs: Decimal" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Total" type = "xs: Decimal" minOccurs = "0" maxOccurs = "1" / >

    < / xs: SEQUENCE >

    < / xs: complexType >

    < / xs: element >

    < xs: element name = "Fechas" >

    < xs: complexType >

    < xs: SEQUENCE >

    < xs: element name = "FechaCreacion" type = "xs: DateTime" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "FechaEnvio" type = xs: DateTime "" nillable = "true" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "FechaAceptacion" type = xs: DateTime "" nillable = "true" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "FechaCancelacion" type = xs: DateTime "" nillable = "true" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "FechaUltimaModificacion" type = xs: DateTime "" nillable = "true" minOccurs = "0" maxOccurs = "1" / >

    < / xs: SEQUENCE >

    < / xs: complexType >

    < / xs: element >

    < xs: element name = "Comprador" >

    < xs: complexType >

    < xs: SEQUENCE >

    < xs: element name = "CodigoOrganismo" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "NombreOrganismo" type = "xs: String" nillable = "true" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "RutUnidad" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "CodigoUnidad" type = "Integer" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "NombreUnidad" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Activity" type = "xs: String" nillable = "true" / >

    < xs: element name = "DireccionUnidad" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "ComunaUnidad" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "RegionUnidad" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Country" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "NombreContacto" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "CargoContacto" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "FonoContacto" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "MailContacto" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < / xs: SEQUENCE >

    < / xs: complexType >

    < / xs: element >

    < xs: element name = "Proveedor" >

    < xs: complexType >

    < xs: SEQUENCE >

    < xs: element name = "Code" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Number" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Activity" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "CodigoSucursal" type = "Integer" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "NombreSucursal" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "RutSucursal" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Address" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Comuna" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Region" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "Country" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "NombreContacto" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "CargoContacto" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "FonoContacto" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < xs: element name = "MailContacto" type = "xs: String" minOccurs = "0" maxOccurs = "1" / >

    < / xs: SEQUENCE >

    < / xs: complexType >

    < / xs: element >

    < / xs: Schema >

    ', LOCAL = > true, GENTYPES = > false, GENBEAN = > false, GENTABLES = > false,

    FORCE = > false, OPTIONS = > DBMS_XMLSCHEMA. REGISTER_BINARYXML, OWNER = > USER);

    I have a table with one xml domain.

    CREATE TABLE XML_Orden_Detalle (Fecha_GET date default current_date not null,

    Fecha_Ordenes number not null,

    Correlativo_Ordenes number not null,

    Codigo_Orden varchar2 (20) not not null primary key,

    Cant_Item,

    Date of InicioProceso,

    Date of FinProceso,

    Xmltype Orden_Detalle not null)

    Orden_Detalle XMLTYPE COLUMN

    STORE AS BINARY XML

    XMLSCHEMA " " http://xmlns.Oracle.com/xdb/schemas/CCS_XML/OrdenDetalle.xsd "" "

    ELEMENT "command";


    I inserted data like that, without any Errors:

    " < Command containing = ' http://www.w3.org/2001/XMLSchema "" xmlns: xsi = " " http://www.w3.org/2001/XMLSchema-instance ">

    < Number > 1 < / quantity >

    < FechaCreacion > 2015-05-28T 12: 10:26.947000 < / FechaCreacion >

    v1 < version > < / Version >

    < Return >

    < OrdenCompra xsi: type = "OrdenCompraBusqueda" >

    3879-2661-SE14 < code > < / code >

    < Number > PSP DAEM 2014.  COFFEE BREAK PARA FRINGE OP21838 < / number >

    < CodigoEstado > 6 < / CodigoEstado >

    3902 5-on 14 < CodigoLicitacion > < / CodigoLicitacion >

    < Description > PSP DAEM 2014.  COFFEE BREAK PARA FRINGE OP21838 < / description >

    < CodigoTipo > 8 < / CodigoTipo >

    < Type > SE < / Type >

    < TipoMoneda > CLP < / TipoMoneda >

    Is < State > < / Estado >

    < CodigoEstadoProveedor > 4 < / CodigoEstadoProveedor >

    Is < EstadoProveedor > < / EstadoProveedor >

    < Fechas >

    < FechaCreacion > 2014-12-29T 17: 43:32.287000 < / FechaCreacion >

    < FechaEnvio > 2014-12-31T 10: 32:35.480000 < / FechaEnvio >

    < FechaAceptacion > 2015 - 01-01 T 21: 03:03.660000 < / FechaAceptacion >

    < FechaCancelacion xsi: Nil = "true" / >

    < FechaUltimaModificacion > 2014-12-29T 17: 51:00.000000 < / FechaUltimaModificacion >

    < / Fechas >

    < TieneItems > 1 < / TieneItems >

    < PromedioCalificacion > 5 < / PromedioCalificacion >

    < CantidadEvaluacion > 1 < / CantidadEvaluacion >

    < Well > 0 < / well >

    cargo <>0 < / cargo >

    < TotalNeto > 53782 < / TotalNeto >

    < PorcentajeIva > 19 < / PorcentajeIva >

    < Impuestos > 10218 < / Impuestos >

    < total > 64000 < / Total >

    < Financing > 1140569 < / financing >

    < Country > CL < / Pais >

    < TipoDespacho > 12 < / TipoDespacho >

    < FormaPago > 2 < / FormaPago >

    < comprador >

    < CodigoOrganismo > 118069 < / CodigoOrganismo >

    < NombreOrganismo > Ilustre municipalidad of Bulnes < / NombreOrganismo >

    < RutUnidad > 69.141.200 - 8 < / RutUnidad >

    < CodigoUnidad > 4799 < / CodigoUnidad >

    Daem < NombreUnidad > < / NombreUnidad >

    < Actividad / >

    < DireccionUnidad > VICTOR BIANCHI Nº415 < / DireccionUnidad >

    Bulnes < ComunaUnidad > < / ComunaUnidad >

    < RegionUnidad > Region del Biobio < / RegionUnidad >

    < Country > CL < / Pais >

    Antonella Brunetti < NombreContacto > < / NombreContacto >

    Adquisiciones < CargoContacto > < / CargoContacto >

    < FonoContacto > 56-42-2204053-2204054 < / FonoContacto >

    < MailContacto > [email protected] < / MailContacto >

    < / comprador >

    < Proveedor >

    < Code > 275020 < / code >

    Luis < number > < / number >

    < Activity > MANUFACTURING OF PAN, BLOCK PANADERIA Y PRODUCTOS < / activity >

    < CodigoSucursal > 280820 < / CodigoSucursal >

    Luis < NombreSucursal > < / NombreSucursal >

    < RutSucursal > 5.940.940 - 9 < / RutSucursal >

    < Address > Carlos Palacios 125 < / address >

    Bulnes < Comuna > < / Comuna >

    Region del Biobio < region > < / region >

    < Country > CL < / Pais >

    < NombreContacto > Luis Leonardo Valdés Landero < / NombreContacto >

    Gerente < CargoContacto > < / CargoContacto >

    < FonoContacto > (56) (42) 631498 < /FonoContacto >

    < MailContacto > [email protected] < / MailContacto >

    < / Proveedor >

    elements <>

    < Quantity > 7 < / quantity >

    < Return >

    < item >

    < Correlativo > 1 < / Correlativo >

    < CodigoCategoria > 30222700 < / CodigoCategoria >

    < Category > items para estructuras, obras y construcciones / permanent Construcciones / industriales Construcciones < / categories >

    < CodigoProducto > 30222703 < / CodigoProducto >

    < product > ALMACEN Mercancias < / product >

    < EspecificacionComprador > 3 LITROS BEBIDAS < / EspecificacionComprador >

    < EspecificacionProveedor / >

    < Number > 10 < / quantity >

    < Moneda > CLP < / Moneda >

    < PrecioNeto > 1550 < / PrecioNeto >

    < TotalCargos > 0 < / TotalCargos >

    < TotalDescuentos > 0 < / TotalDescuentos >

    < TotalImpuestos > 0 < / TotalImpuestos >

    < total > 15500 < / Total >

    < / point >

    < item >

    < Correlativo > 2 < / Correlativo >

    < CodigoCategoria > 30222700 < / CodigoCategoria >

    < Category > items para estructuras, obras y construcciones / permanent Construcciones / industriales Construcciones < / categories >

    < CodigoProducto > 30222703 < / CodigoProducto >

    < product > ALMACEN Mercancias < / product >

    < EspecificacionComprador > DEEMED OF 1 1/2 LITYROS < / EspecificacionComprador >

    < EspecificacionProveedor / >

    < Number > 10 < / quantity >

    < Moneda > CLP < / Moneda >

    < PrecioNeto > 1150 < / PrecioNeto >

    < TotalCargos > 0 < / TotalCargos >

    < TotalDescuentos > 0 < / TotalDescuentos >

    < TotalImpuestos > 0 < / TotalImpuestos >

    < total > 11500 < / Total >

    < / point >

    < item >

    < Correlativo > 3 < / Correlativo >

    < CodigoCategoria > 30222700 < / CodigoCategoria >

    < Category > items para estructuras, obras y construcciones / permanent Construcciones / industriales Construcciones < / categories >

    < CodigoProducto > 30222703 < / CodigoProducto >

    < product > ALMACEN Mercancias < / product >

    < EspecificacionComprador > PACKAGES SERVILLETAS < / EspecificacionComprador >

    < EspecificacionProveedor / >

    < Number > 8 < / quantity >

    < Moneda > CLP < / Moneda >

    < PrecioNeto > 170 < / PrecioNeto >

    < TotalCargos > 0 < / TotalCargos >

    < TotalDescuentos > 0 < / TotalDescuentos >

    < TotalImpuestos > 0 < / TotalImpuestos >

    < total > 1360 < / Total >

    < / point >

    < item >

    < Correlativo > 4 < / Correlativo >

    < CodigoCategoria > 30222700 < / CodigoCategoria >

    < Category > items para estructuras, obras y construcciones / permanent Construcciones / industriales Construcciones < / categories >

    < CodigoProducto > 30222703 < / CodigoProducto >

    < product > ALMACEN Mercancias < / product >

    < EspecificacionComprador > pounds OF AZÚCAR < / EspecificacionComprador >

    < EspecificacionProveedor / >

    < Number > 5 < / quantity >

    < Moneda > CLP < / Moneda >

    < PrecioNeto > 580 < / PrecioNeto >

    < TotalCargos > 0 < / TotalCargos >

    < TotalDescuentos > 0 < / TotalDescuentos >

    < TotalImpuestos > 0 < / TotalImpuestos >

    < total > 2900 < / Total >

    < / point >

    < item >

    < Correlativo > 5 < / Correlativo >

    < CodigoCategoria > 30222700 < / CodigoCategoria >

    < Category > items para estructuras, obras y construcciones / permanent Construcciones / industriales Construcciones < / categories >

    < CodigoProducto > 30222703 < / CodigoProducto >

    < product > ALMACEN Mercancias < / product >

    < EspecificacionComprador > NESCAFE < / EspecificacionComprador >

    < EspecificacionProveedor / >

    < Number > 2 < / quantity >

    < Moneda > CLP < / Moneda >

    < PrecioNeto > 3900 < / PrecioNeto >

    < TotalCargos > 0 < / TotalCargos >

    < TotalDescuentos > 0 < / TotalDescuentos >

    < TotalImpuestos > 0 < / TotalImpuestos >

    < total > 7800 < / Total >

    < / point >

    < item >

    < Correlativo > 6 < / Correlativo >

    < CodigoCategoria > 30222700 < / CodigoCategoria >

    < Category > items para estructuras, obras y construcciones / permanent Construcciones / industriales Construcciones < / categories >

    < CodigoProducto > 30222703 < / CodigoProducto >

    < product > ALMACEN Mercancias < / product >

    < EspecificacionComprador > CAJAS OF TE 20 BOWL < / EspecificacionComprador >

    < EspecificacionProveedor / >

    < Number > 5 < / quantity >

    < Moneda > CLP < / Moneda >

    < PrecioNeto > 340 < / PrecioNeto >

    < TotalCargos > 0 < / TotalCargos >

    < TotalDescuentos > 0 < / TotalDescuentos >

    < TotalImpuestos > 0 < / TotalImpuestos >

    < total > 1700 < / Total >

    < / point >

    < item >

    < Correlativo > 7 < / Correlativo >

    < CodigoCategoria > 30222700 < / CodigoCategoria >

    < Category > items para estructuras, obras y construcciones / permanent Construcciones / industriales Construcciones < / categories >

    < CodigoProducto > 30222703 < / CodigoProducto >

    < product > ALMACEN Mercancias < / product >

    TRITON GALLETAS < EspecificacionComprador > < / EspecificacionComprador >

    < EspecificacionProveedor / >

    < Number > 31 < / quantity >

    < Moneda > CLP < / Moneda >

    < PrecioNeto >420,05< / PrecioNeto >

    < TotalCargos > 0 < / TotalCargos >

    < TotalDescuentos > 0 < / TotalDescuentos >

    < TotalImpuestos > 0 < / TotalImpuestos >

    < total > 13021,550000000001 < / Total >

    < / point >

    < / News >

    < / object >

    < / OrdenCompra >

    < / News >

    < / Monsigniore >

    However when I extract data, for example:


    Select *.

    from xmltable (to_char (' / Monsigniore/news/OrdenCompra/Items/News/Item[1] ''))

    passage (select Orden_Detalle

    of xml_Orden_Detalle

    where Fecha_Ordenes = 20150101 and Correlativo_ordenes = 83)

    path of columns Correlativo varchar2 (15) 'Correlativo '.

    , Path of varchar2 (15) CodigoCategoria 'CodigoCategoria '.

    , Path Categoria Varchar2 (100 CHAR) "category.

    , Path of varchar2 (15) CodigoProducto 'CodigoProducto '.

    , Path of Producto Varchar2 (100 CHAR) 'product '.

    , Path of the EspecificacionComprador Varchar2 (100 CHAR) "EspecificacionComprador".

    , Path of the EspecificacionProveedor Varchar2 (100 CHAR) "EspecificacionProveedor".

    , Amount varchar2 (15) path 'amount '.

    , Path of the Moneda Varchar2 (16 CHAR) "Moneda".

    , Path of varchar2 (15) PrecioNeto 'PrecioNeto '.

    , Path of varchar2 (15) TotalCargos 'TotalCargos '.

    , Path of varchar2 (15) TotalDescuentos 'TotalDescuentos '.

    , Path of varchar2 (15) TotalImpuestos 'TotalImpuestos '.

    , Path of varchar2 (15) total 'Total '.

    );


    delivery the following error:


    Informed of error:

    SQL error: ORA-31038: Valor number no valido: "420,05."

    «31038 00000 - "value not valid %s: \"%s\»»

    * Cause: The text in the XML document does not represent a valid

    value given the data type and other constraints in the schema.

    * Action: Make sure the value specified in the XML documents is valid

    regarding the data type and other constraints in the schema.

    Note that extract le agenda [1] but the reported error is à la point [7]

    Please If anyone can Help me with le solution for no report error

    Thank you very much in advance

    Carlos

    in Chile, the decimal point are ', 'no'.', the xml data table is OK for us

    You do not understand.

    Regardless of the locale, numeric values limited by a type of data XS: Decimal must use a point in a correct XML representation, otherwise, the document is not valid by the XSD.

    (3) TO_CHAR (...) the code is part of a procedure

    Again, do NOT build a dynamic path like that.

    Why not just move through the records returned by the query (if you need close at all)?


    FOR rec in)

    SELECT x.*

    From your_table t

    XMLTABLE (...) x

    )

    LOOP

    END LOOP;


    What is the role of the v_CantItems variable? Paging?

    Whence its value?

  • Extract data from an xml file takes almost an hour to 2.5 M data.

    Hello

    Any help would be much appreciated. Extract data from an xml file takes almost an hour to 2.5 M. data is there a solution to this.

    WITH t AS
    (SELECT XMLTYPE (response) pass FROM dual
    )
    SELECT
    b.entity_id,
    c.INSTANCE_ID,
    d.attribute_id,
    d.DATA_TYPE,
    d.ATTRIBUTE_VALUE,
    d.outcome_style
    T,.
    XMLTABLE (XMLNamespaces ("http://schemas.xmlsoap.org/soap/envelope/" AS "SOAP-ENV"
    'http://oracle.com/determinations/server/10.3/rulebase/assess/types' AS 'type')
    , ' SOAP - ENV:Envelope / SOAP - ENV:Body / typ: assess-response/typ: global instance / typ:entity'
    PASSAGE t.col
    Path of COLUMNS entity_id VARCHAR2 (256) "@id".
    path XMLTYPE res_tmp2 'typ:instance') b
    xmltable (XMLNamespaces ("http://schemas.xmlsoap.org/soap/envelope/" AS "SOAP-ENV"
    'http://oracle.com/determinations/server/10.3/rulebase/assess/types' AS 'type')
    , "typ:instance".
    PASSAGE b.res_tmp2
    Path of COLUMNS instance_id VARCHAR2 (256) "@id".
    path XMLTYPE res_tmp3 'typ:attribute') c
    xmltable (XMLNamespaces ("http://schemas.xmlsoap.org/soap/envelope/" AS "SOAP-ENV"
    'http://oracle.com/determinations/server/10.3/rulebase/assess/types' AS 'type')
    , "typ:attribute".
    PASSAGE c.res_tmp3
    Path of VARCHAR2 (256) COLUMNS attribute_id '@id '.
    , data_type VARCHAR2 (256) path '@type '.
    , attribute_value VARCHAR2 (256) path '.'
    path VARCHAR2 (256) outcome_style '@inferred') d;

    Thank you
    Mhand

    OK, in this case the best option is to store the answer in a binary table of XMLType (may be a temporary table if you want to) and run the query from there:

    CREATE TABLE tmp_xml OF XMLType
    XMLType STORE AS SECUREFILE BINARY XML -- default storage in your version
    ;
    
    INSERT INTO tmp_xml VALUES(XMLType(response));
    
    SELECT b.entity_id,
           c.instance_id,
           d.attribute_id,
           d.data_type,
           d.attribute_value,
           d.outcome_style
    FROM tmp_xml t,
         XMLTABLE(
           XMLNamespaces('http://schemas.xmlsoap.org/soap/envelope/' AS "SOAP-ENV"
                        , 'http://oracle.com/determinations/server/10.3/rulebase/assess/types' AS "typ")
         , 'SOAP-ENV:Envelope/SOAP-ENV:Body/typ:assess-response/typ:global-instance/typ:entity'
           PASSING t.object_value
           COLUMNS
    ...
    
  • Extraction of data from XMLType field

    Sorry, I am not sure XMLQuery, this is probably a simple question.  I am trying to extract data in a tabular form of an XMLTYPE field.  I will use the following example to illustrate my question:

    WITH a (too)

    Select xmltype (')

    < bugStatus >

    < status >

    < > 111 bugCode < / bugCode >

    < number of bug = "12345" description = "Low severity bug" / >

    < / status >

    < status >

    < > 222 bugCode < / bugCode >

    < number of bug = "67890" description = "high severity bug" / >

    < / status >

    < / bugStatus >

    XMLDATA') of double)

    SELECT x.*

    A xmltable (' bugStatus/status

    by the way the columns in a.xmldata

    status_code number path "bugCode.

    ) x ;

    Run this code extracts block the "bugCode' fields successfully.  But I would also to extract the 'bug number' and 'description' fields.  Ideally in the independent columns.  But even if only as a single line 'number of bug =... description =... ". "I could still do it analyze with SQL.

    Can someone tell me please in the sense of how I can also extract additional data?

    Thank you!

    Attributes are processed by '@' so in your example (thank you), you can solve it through

    WITH a (too)

    Select xmltype (')

    111

    222

    XMLDATA') of double)

    SELECT x.*

    A xmltable (' bugStatus/status

    PASSAGE a.xmldata

    COLUMNS

    ROW_NUMBER for ordinalite,

    path number bugCode "bugCode."

    bugNumber path number "bug/@number."

    path of varchar2 (4000) bugDescription 'bug/@description '.

    ) x ;

    ROW_NUMBER BUGCODE BUGNUMBER BUGDESCRIPTION

    ---------- ---------- ---------- --------------------------------------------------

    1 111 12345 low severity bug

    2 222 67890 high severity bug

  • Extract the value between the xml tags in the XML inside the BLOB field

    Hello

    I have a table that contains a BLOB column, this XML file to store column that received from an external source. Now for one of my needs. I need to read that value is the specific XML tag and create the entry in the database.

    Column name DataType
    IDNumber
    RecordBLOB OBJECT

    This is the XML code that is stored in the file inside the BLOB field format. XML below, I need go get AMC1234 there is after < itemName > text < / itemName > I thought to use XMLTYPE, but unfortunately my DBA team does not XML database, I now use UTL_RAW. CAST_TO_VARCHAR2 and recovery entire string, but I am not able to read actual result it takes. Can someone help me remove AMC1234.

    <? XML version = "1.0"? >

    <! DOCTYPE importFile SYSTEM "xyz.dtd" >

    -< importFile >

    -< importResult >

    < mode status = "DΘFINIR" > general failure < / status >

    < statusCode > 1 < / statusCode >

    invalid < errorMsg > list and holiday component < / errorMsg >

    -< returnInfo >

    < itemName > PRQ < / itemName >

    < Valeurelement > CBA < / Valeurelement >

    < / returnInfo >

    -< returnInfo >

    < itemName > LMP < / itemName >

    < Valeurelement > CBA < / Valeurelement >

    < / returnInfo >

    -< returnInfo >

    < itemName > KEY < / itemName >

    < Valeurelement > 9999 < / Valeurelement >

    < / returnInfo >

    -< returnInfo >

    < itemName > text < / itemName >

    < Valeurelement > AMC1234, FIXED_ALL, RED < / Valeurelement >

    < / returnInfo >

    < / importResult >

    < / importFile >


    Thank you

    Without

    Without - try something like...

    with t as (select"

    -

    -

    General failure

    1

    component and invalid vacation list

    -

    PRQ

    ABC

    -

    LMP

    ABC

    -

    KEY

    9999

    -

    Text

    AMC1234, FIXED_ALL, RED

    "the double pass."

    )

    Select Replace (regexp_substr (col,'([^<>']) itemName))

    , replace (regexp_substr (col,'([^<>""]) Valeurelement))

    t

    connection of level <=> ');

  • How to extract data from a signed pdf that was sent to me.

    I can extract data from a PDF file that is not signed, but how to extract data from a signed PDF? Exporting data option does not work once it is signed. Specifically, I want to combine the data into a csv file, but a PDF signed does not to me.

    Hi evanb92625060,

    It is not possible to extract (using Acrobat |) Collection and management of the PDF to form data) data from a signed PDF form is that it locks all fields in the form.

    Kind regards
    Nicos

  • Extract data from form DPS 2015?

    I have a registration form with some fields such as name, email etc. identification and a "submit" button.

    Here are a few questions about this:

    1. can I create a form with fields (name, e-mail id) in 2015 DPS.

    2. If so, how can retrieve us the data from the form after submission. Is there an API to extract data from form of DPS 2015?

    3. where we store the data? Can it be stored in the AEM or DPS?

    Appreciate your suggestions and help.

    Hi Kalyan,

    It's nothing built in DPS to do this, however you can use the HTML articles for this feature. You will need to write JavaScript code to handle the #2 and #3 elements. It is up to you to decide where you want to store the information collected. Usually you get shipped back through a Web service to a site or a database, you manage.

    Neil

  • extract data from XMLType using vbscript on OleDB?

    Hello.

    We have a problem where the XMLType column data to get in 11.2.0.1 on Windows x 64 worked very well, but we have moved to 11.2.0.3 Patch 21 and the column type changed to binary storage default, and we started to do read errors when the data was greater than 32 k (or so it seems).

    I opened a SR, and Oracle support sent me a VB script to test playback of the table on OleDB.  However, their script doesn't seem to work as announced, so after a lot of gooling, came to us with the following to read a column of xmltype - not the same table, just to test that the vbscript works:

    REM need to re-register the dll OLEDB as there is a problem with the oracle client and the dll registration

    REM start following an administrator command prompt

    REM regsvr32.exe c:\Users\finite9\oracle\product\11.2.0\client_2\bin\oraoledb11.dll

    the con value = createobject ("adodb.connection")

    con. Open "provider = oraoledb.oracle; user id = finite9; password = password1; data source = TSTDB ".

    Set rs = createobject ("adodb.recordset")

    RS. Open 'select SW_REPLY changedate', con

    While not on the place. EXPRESSIONS OF FOLKLORE

    MsgBox rs. Fields ("ChangeDate"). Value

    RS. MoveNext

    Wend

    RS. Close

    Set rs = nothing

    con. Close

    the value con = nothing

    This works perfectly and displays 12 rows in this column in a vbscript dialog box, but I am not able to do to extract the XMLType column clob data.  I try with for example. RS. Open 'select REPLYDATA.getclobval () from SW_REPLY', stupid but just get errors.

    Is it possible to extract data from XMLType on OleDB with vbscript?  It cannot be OleDB itself which poses problem, because it has worked in our application and 11.2.0.1 although with < 32 k of data.  But it would be nice to have a working test case while we were able to test out our app.  If it is with vbscript or c# is irrelevant.

    ignore the message, it is possible.  Support of Oracle gave me this:

    the con value = createobject ("adodb.connection")

    con. Open "provider = oraoledb.oracle; user id = finite9; password = password1; data source = DEVTST ".

    Set rs = createobject ("adodb.recordset")

    RS. Open "select t.REPLYDATA.getclobval () as xmltestdata OF SW_REPLY t", con

    While not on the place. EXPRESSIONS OF FOLKLORE

    MsgBox rs. Fields ("xmltestdata"). Value

    RS. MoveNext

    Wend

    RS. Close

    Set rs = nothing

    con. Close

    the value con = nothing

    but there is a problem when xmldata exceeds a certain size.  small starters work well if.

  • Extract data from error HFM, float to Numeric?

    Hi all

    We extract data from HFM,.

    HFM-> SQL-> FILE staging

    Our mapping, flow, everything seems fine. When we run this out on the third market errors while extracting data with the following:

    com.hyperion.odi.common.ODIHAppException: arithmetic overflow error conversion float type numeric data.


    We researched and found to increase the logical length should solve this problem.

    Our Source has a length of 16...

    We have increased the logical length of target from 16 to 30, and he rest-error. We even tried 50, 100 for the logical length.

    We are at Version 10.1.3.6.0.

    Any suggestions on how to fix this?

    Thank you!

    Published by: user10678366 on May 22, 2013 13:28

    Have you tried changing the scale of all the columns float, right?

    It can be a ridiculously large number coming from HFM. So, go to store for your data source in ODI and manually change the data type of column type VARCHAR of size like 100 or more. That would force the ODI to create the staging table with columns of characters for the field. Data will be retrieved anyway. Given that you write it in file, type of character should not matter. In addition, if writing to the file fails for any reason, you can do a max on the staging table and find the value problem in the table (while in HFM, you may not be able to do).

  • Extract data from Oracle into excel file

    Hello

    I have a requirement where in I need to extract data from Oracle into excel file and the worksheet excel name should be 'given '.
    for example. Excel 'AR Data_DDMMYY' file name and the name of the "Data" sheet excel

    I used the UTL_FILE API to extract the data delimited by tabs that you can open in excel, but it's not exactly an excel file as the name of the worksheet is the same as the name of the file.

    I tried to use utl_file.fcopy and frename.

    Is it possible to do it using PLSQL?

    Select * from version of v$.
    Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bi
    PL/SQL Release 10.2.0.5.0 - Production
    "CORE     10.2.0.5.0     Production"
    TNS for HPUX: Version 10.2.0.5.0 - Production
    NLSRTL Version 10.2.0.5.0 - Production
    Example Code:
    declare
    cursor c is
    select * from scott.emp;
    v varchar2(100);
    f utl_file.file_type;
    
    file_name varchar2(100) := 'AR Data.xls';
    dir varchar2(50) := 'CESDIR191710';
    
    --select * from dba_directories
    
    begin
    
    
    f := utl_file.fopen(dir, file_name, 'W');
    
    v := 'EMPNO'||chr(9)||'ENAME'||chr(9)||'JOB'||chr(9)||'SAL'||chr(9)||'HIREDATE'||chr(9)||'DEPTNO';
    utl_file.put_line(f, v);
    
    for i in c
    loop
    
    v := i.empno||chr(9)||i.ename||chr(9)||i.job||chr(9)||i.sal||chr(9)||i.hiredate||chr(9)||i.deptno;
    utl_file.put_line(f, v);
    
    end loop;
    utl_file.fclose(f);
    
    --utl_file.frename(dir, file_name, dir, replace(file_name, '.xls', '_')||to_char(sysdate, 'MMDDYY')||'.xls', false);
    utl_file.fcopy(dir, file_name, dir, replace(file_name, '.xls', '_')||to_char(sysdate, 'MMDDYY')||'.xls');
    
    end;
    Thank you
    Imran

    Hello

    I tried to change the .xlsx to .xls and it gives a note at the opening of the file "the file you are trying to open, abc.xls, is in a different format that it is specified by the file extension. Check that the file is not corrupted and precedes from a trusted source before you open the file. Do you want to open it now? »

    When you rename the file does not solve your problem.
    Anton Scheffer package generates a file in format xlsx Office 2010. When rename you it with the .xls extension, then Office 2010 will give you the warning that the file format does not match the extension.

    but the requirement has to generate excel 2003 file.

    The xml_spreadsheet package writes a format that was introduced with Office 2003, but you must use .xml as extension in other Office 2010 will give you the same caveat.
    To write the real xls version (binary), you can use Apache POI. You will need to import Java classes in your db and write a PL/SQL wrapper. Or you can use one of the options above, writing the output to a windows server and then use Excel to open and save in the required format.

    You must decide whether it is easier to write the binary xls format or to convince the customer to accept other formats that can be opened with Excel.

    Concerning
    Marcus

  • extract data from a table to a text file

    I need to extract data from a table to a text file, I twist my output is the following...

    bash-3. $00 vi tap3roamercosts_20110915144318.txt
    lines of 'tap3roamercosts_20110915144318.txt' 393948, 23464348 characters
    ^ LAFGTD | N | 2011090203000001 | 13242514000064 | 1. 0 | 20. 41220 | 02-SEVEN.-11. 01-SEPT.-11. 0 | 13244
    755. 64. 70. 0093794428588 | 0093796234547 | 0 | S2 | E | 412200306902634 | 8. 1. 61500 | 16081 |
    | HW | Call to the Roamer. 0 | I have | Roaming billing Inroamer Plan | 1_0_1 | LKA | N_I_Independent
    the time of day. Rate of Roamer SMST systems | AFGTD20110902030000010001013242514000064 |
    |||||||||||||||||||||

    AFGTD | N | 2011090203000001 | 13242612000044 | 1. 0 | 20. 41220 | 02-SEVEN.-11. 01-SEPT.-11. 0 | 13244
    853. 44. 70. 234. 0093793252818 | 0 | S2 | E | 412200303198150 | 8. 1. 61000 | 12403 | HW | -Ro
    bitter call | 0 | I have | Roaming billing Inroamer Plan | 1_0_1 | N_I_Independent time of Da
    There | Rate of Roamer SMST systems | AFGTD20110902030000010001013242612000044 |
    ||||||||

    AFGTD | N | 2011090203000001 | 13242612000047 | 1. 0 | 20. 41220 | 02-SEVEN.-11. 01-SEPT.-11. 0 | 13244
    853. 47. 70. 234. 0093793252818 | 0 | S2 | E | 412200303198150 | 8. 1. 61000 | 12403 | HW | -Ro
    bitter call | 0 | I have | Roaming billing Inroamer Plan | 1_0_1 | N_I_Independent time of Da
    There | Rate of Roamer SMST systems | AFGTD20110902030000010001013242612000047 |
    ||||||||
    .
    .
    .
    .
    .

    Please help me how to format my output each record in simple lines in oracle sqlplus. Here are the settings I used...

    TERMOUT OFF SET;
    SET ECHO OFF;
    SET LINESIZE 100000;
    THE VALUE OF NEWPAGE 0;
    SET SPACE 0;
    SET PAGESIZE 50000;
    SET FEEDBACK OFF;
    SET THE OFF POSITION;
    SET TRIMSPOOL
    SET THE TAB

    And what was wrong with the answers that you have on your previous thread?

    How to extract data in a text file

    Please do not ask the same question again. If there is a problem with the answers provided, then continue on the same thread that tell people what is the problem.

    Saying that, this is another possibility for you...

    As user sys:

    CREATE OR REPLACE DIRECTORY TEST_DIR AS '\tmp\myfiles'
    /
    GRANT READ, WRITE ON DIRECTORY TEST_DIR TO myuser
    /
    

    As myuser:

    CREATE OR REPLACE PROCEDURE run_query(p_sql IN VARCHAR2
                                         ,p_dir IN VARCHAR2
                                         ,p_header_file IN VARCHAR2
                                         ,p_data_file IN VARCHAR2 := NULL) IS
      v_finaltxt  VARCHAR2(4000);
      v_v_val     VARCHAR2(4000);
      v_n_val     NUMBER;
      v_d_val     DATE;
      v_ret       NUMBER;
      c           NUMBER;
      d           NUMBER;
      col_cnt     INTEGER;
      f           BOOLEAN;
      rec_tab     DBMS_SQL.DESC_TAB;
      col_num     NUMBER;
      v_fh        UTL_FILE.FILE_TYPE;
      v_samefile  BOOLEAN := (NVL(p_data_file,p_header_file) = p_header_file);
    BEGIN
      c := DBMS_SQL.OPEN_CURSOR;
      DBMS_SQL.PARSE(c, p_sql, DBMS_SQL.NATIVE);
      d := DBMS_SQL.EXECUTE(c);
      DBMS_SQL.DESCRIBE_COLUMNS(c, col_cnt, rec_tab);
      FOR j in 1..col_cnt
      LOOP
        CASE rec_tab(j).col_type
          WHEN 1 THEN DBMS_SQL.DEFINE_COLUMN(c,j,v_v_val,2000);
          WHEN 2 THEN DBMS_SQL.DEFINE_COLUMN(c,j,v_n_val);
          WHEN 12 THEN DBMS_SQL.DEFINE_COLUMN(c,j,v_d_val);
        ELSE
          DBMS_SQL.DEFINE_COLUMN(c,j,v_v_val,2000);
        END CASE;
      END LOOP;
      -- This part outputs the HEADER
      v_fh := UTL_FILE.FOPEN(upper(p_dir),p_header_file,'w',32767);
      FOR j in 1..col_cnt
      LOOP
        v_finaltxt := ltrim(v_finaltxt||','||lower(rec_tab(j).col_name),',');
      END LOOP;
      --  DBMS_OUTPUT.PUT_LINE(v_finaltxt);
      UTL_FILE.PUT_LINE(v_fh, v_finaltxt);
      IF NOT v_samefile THEN
        UTL_FILE.FCLOSE(v_fh);
      END IF;
      --
      -- This part outputs the DATA
      IF NOT v_samefile THEN
        v_fh := UTL_FILE.FOPEN(upper(p_dir),p_data_file,'w',32767);
      END IF;
      LOOP
        v_ret := DBMS_SQL.FETCH_ROWS(c);
        EXIT WHEN v_ret = 0;
        v_finaltxt := NULL;
        FOR j in 1..col_cnt
        LOOP
          CASE rec_tab(j).col_type
            WHEN 1 THEN DBMS_SQL.COLUMN_VALUE(c,j,v_v_val);
                        v_finaltxt := ltrim(v_finaltxt||',"'||v_v_val||'"',',');
            WHEN 2 THEN DBMS_SQL.COLUMN_VALUE(c,j,v_n_val);
                        v_finaltxt := ltrim(v_finaltxt||','||v_n_val,',');
            WHEN 12 THEN DBMS_SQL.COLUMN_VALUE(c,j,v_d_val);
                        v_finaltxt := ltrim(v_finaltxt||','||to_char(v_d_val,'DD/MM/YYYY HH24:MI:SS'),',');
          ELSE
            v_finaltxt := ltrim(v_finaltxt||',"'||v_v_val||'"',',');
          END CASE;
        END LOOP;
      --  DBMS_OUTPUT.PUT_LINE(v_finaltxt);
        UTL_FILE.PUT_LINE(v_fh, v_finaltxt);
      END LOOP;
      UTL_FILE.FCLOSE(v_fh);
      DBMS_SQL.CLOSE_CURSOR(c);
    END;
    

    This allows the header line and the data to write into files separate if necessary.

    for example

    SQL> exec run_query('select * from emp','TEST_DIR','output.txt');
    
    PL/SQL procedure successfully completed.
    

    Output.txt file contains:

    empno,ename,job,mgr,hiredate,sal,comm,deptno
    7369,"SMITH","CLERK",7902,17/12/1980 00:00:00,800,,20
    7499,"ALLEN","SALESMAN",7698,20/02/1981 00:00:00,1600,300,30
    7521,"WARD","SALESMAN",7698,22/02/1981 00:00:00,1250,500,30
    7566,"JONES","MANAGER",7839,02/04/1981 00:00:00,2975,,20
    7654,"MARTIN","SALESMAN",7698,28/09/1981 00:00:00,1250,1400,30
    7698,"BLAKE","MANAGER",7839,01/05/1981 00:00:00,2850,,30
    7782,"CLARK","MANAGER",7839,09/06/1981 00:00:00,2450,,10
    7788,"SCOTT","ANALYST",7566,19/04/1987 00:00:00,3000,,20
    7839,"KING","PRESIDENT",,17/11/1981 00:00:00,5000,,10
    7844,"TURNER","SALESMAN",7698,08/09/1981 00:00:00,1500,0,30
    7876,"ADAMS","CLERK",7788,23/05/1987 00:00:00,1100,,20
    7900,"JAMES","CLERK",7698,03/12/1981 00:00:00,950,,30
    7902,"FORD","ANALYST",7566,03/12/1981 00:00:00,3000,,20
    7934,"MILLER","CLERK",7782,23/01/1982 00:00:00,1300,,10
    

    The procedure allows for the header and the data to separate files if necessary. Just by specifying the file name "header" will put the header and the data in a single file.

    Adapt to the exit of styles and different types of data are needed.

  • Help needed to extract the pipe-delimited fields in a CLOB data type

    Hello

    I had a table with clob field as indicated below.
    CREATE TABLE TRANSACTION_INFO
    (
      TRASACTION_ID  CLOB,
      LOG_ID  NUMBER
    )
    
    Insert into TRANSACTION_INFO
       (TRASACTION_ID, LOG_ID)
     Values
       ('354502002020910|000000610214609663||09/27/09 08:02:37|RNEW|DC25|MOTOROLA|8802939198', 123);
    Insert into TRANSACTION_INFO
       (TRASACTION_ID, LOG_ID)
     Values
       ('354599892020910|000000610214609663||09/27/10 08:12:47|SOLD|DC23||8802939198', 456);
    COMMIT;
    As you can see the field Clob is a pipe delimited data. Now I'm able to extract the first two fields using the below querry. But it may be the right solution as
    SUBSTRING function fails if there is lack of character in all fields.
    Also when there is a null value in all the areas, how can I be able to get as a null value? Basically, I want to get the values in a defined way.

    How can we achieve this?
    Select Substr (TRASACTION_ID, 1, Instr (TRASACTION_ID, '|')-1) field1,
            Substr (TRASACTION_ID, 17, Instr (TRASACTION_ID, '|')+2) field2               
      From TRANSACTION_INFO;
      
    
    output should be like as shown
    
       FIELD1          FIELD2          FEILD3                 FEILD4
      
    354502002020910     000000610214609663                  09/27/09 08:02:37
    354599892020910     000000610214609663                  09/27/10 08:12:47
    Thank you
    Rede
    SQL> with transaction_info (trasaction_id, log_id)
         as (
     select '354502002020910|000000610214609663||09/27/09 08:02:37|RNEW|DC25|MOTOROLA|8802939198', 123 from dual union all
     select '354599892020910|||000000610214609663||09/27/10 08:12:47|SOLD|DC23||8802939198', 456 from dual union all
     select '|000000610214609663||09/27/10 08:12:47|SOLD|DC23||8802939198', 456 from dual
    )
    --
    --
    select trim(regexp_substr (trasaction_id, '[^|]+', 1, 1)) f1,
           trim(regexp_substr (trasaction_id, '[^|]+', 1, 2)) f2,
           trim(regexp_substr (trasaction_id, '[^|]+', 1, 3)) f3,
           trim(regexp_substr (trasaction_id, '[^|]+', 1, 4)) f4,
           trim(regexp_substr (trasaction_id, '[^|]+', 1, 5)) f5
      from (select regexp_replace(replace (trasaction_id, '|', '| '),'^\|', ' |') trasaction_id from transaction_info)
    /
    F1                   F2                   F3                   F4                   F5
    -------------------- -------------------- -------------------- -------------------- --------------------
    354502002020910      000000610214609663                        09/27/09 08:02:37    RNEW
    354599892020910                                                000000610214609663
                         000000610214609663                        09/27/10 08:12:47    SOLD                
    
    3 rows selected.
    
  • I want to extract data from a PDF using Java

    I would prefer to extract data from a PDF file and convert them to XML. Is there an API that allows to convert a PDF to an Adobe XML format? Ideally, I would like to add a few JAR files to my classpath, similar to PDFBox. I don't want to install a bunch of components side server or something like that.

    Thank you!

    Then Adobe does not offer a solution that meets your needs - sorry.

    Our solution on the server side is our LiveCycle product family which, however, includes a collection of Java APIs.

Maybe you are looking for