Ora-13033 Invalid data in the sdo_elem_info_array in sdo geometry object

Hi,
I am getting this error when I am creating spatial index on geometry.
I suspect I have some problem with some rows of my geometry data. I have identified and fixed these problems so far. but I still getting error on spatial index creation.
-emptry Gtype in some rows
-wrong Gtype in some rows
Complete Error.
ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine
ORA-13249: internal error in Spatial index: mdidxrbd
ORA-13249: iError in Spatial Index: index build fialed
ORA-13200: Internal error RowID:AAANZE/AAFAAALFaAAP..... in spatial indexing
ORA-13206: internal error [] while creating the spatial index
ORA-13033: Invalid data in the sdo_elem_info_array in sdo geometry object
ORA-06512: at "MDSYS.SDO_INDEX_METHOD_10I", line 10
I have line data for this table and below is the sample data.
GEOMETRY(SDO_GTYPE, SDO_SRID, SDO_POINT(X, Y, Z), SDO_ELEM_INFO, SDO_ORDINATES)
SDO_GEOMETRY(2002, 2958, NULL, SDO_ELEM_INFO_ARRAY(1, 2, 1), SDO_ORDINATE_ARRAY(
598520.994, 4837106.63, 598462.359, 4837164.63))
SDO_GEOMETRY(2002, 2958, NULL, SDO_ELEM_INFO_ARRAY(1, 2, 1), SDO_ORDINATE_ARRAY(
599229.43, 4837127.13, 599089.675, 4837264.62))
SDO_GEOMETRY(2002, 2958, NULL, SDO_ELEM_INFO_ARRAY(1, 2, 1), SDO_ORDINATE_ARRAY(
599280.002, 4837024.46, 599295.689, 4837048.09, 599296.21, 4837055.13, 599294.64
5, 4837062.43, 599229.43, 4837127.13))
SDO_GEOMETRY(2002, 2958, NULL, SDO_ELEM_INFO_ARRAY(1, 2, 1), SDO_ORDINATE_ARRAY(
GEOMETRY(SDO_GTYPE, SDO_SRID, SDO_POINT(X, Y, Z), SDO_ELEM_INFO, SDO_ORDINATES)
599089.675, 4837264.62, 599028.567, 4837324.34))
SDO_GEOMETRY(2002, 2958, NULL, SDO_ELEM_INFO_ARRAY(1, 2, 1), SDO_ORDINATE_ARRAY(
595925.144, 4839146.42, 596002.765, 4839128.11, 596007.989, 4839126.85, 596013.5
22, 4839123.09, 596056.926, 4839089.74, 596100.769, 4839065.62, 596106.694, 4839
063.81, 596110.438, 4839064.27, 596115.548, 4839066.47, 596181.122, 4839135.22,
596183.623, 4839140.59, 596183.706, 4839145.03, 596183.319, 4839148.15, 596181.1
78, 4839152.64, 596174.794, 4839163.26, 596165.136, 4839174.75, 596143.191, 4839
194.57))
Please also note that I have correct dimension in "sdo user geom meta data" table and in my table.
Any help is greatly appreciated.
Rose

Hi Rose
If you take a look at the error message, you will find a line there that starts with ORA-13200
ORA-13200: Internal error RowID:AAANZE/AAFAAALFaAAP
This points to the ROW containing the geometry that triggers this error (described in the error message).
So if you could post the geometry of that specific row that might help. Use the following sql statement:
Select geometry from YOUR_TABLE_NAME WHERE ROWID = 'AAANZE/AAFAAALFaAAP';
tx
Luc

Similar Messages

  • ORA-38101: Invalid column in the INSERT VALUES Clause: "acn"

    Hi,
    Oracle version :
    Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
    Funny issue,
    MERGE INTO tfc         cb1
                   USING (SELECT 5351    fs,
                                 1    cs
                          FROM   DUAL)       dual1
                        ON (cb1.fs           =    dual1.fs
                            AND cb1.asgn_cs  =    dual1.cs)
              WHEN MATCHED
              THEN
                   UPDATE
                   SET       cb1.acn          =    '145'         ,
                             cb1.cbs       =    (SELECT ta.as
                                                        FROM   tac ta
                                                        WHERE  ta.acn         = '145'
                                                        AND    ta.ent = 2),
                             cb1.bfs    =    3  ,
                             cb1.efd     =    '28-OCT-09'   ,
                             cb1.uui     =    'A'  ,
                             cb1.ut          =    sysdate
                   WHERE     cb1.fs       =    5351
                   AND       cb1.asgn_cs  =    1
              WHEN NOT MATCHED
              THEN
                   INSERT
                        (cb1.fund_cbs,
                         cb1.asgn_cs,
                         cb1.cbs,
                         cb1.fs,
                         cb1.bfs,
                         cb1.acn,
                         cb1.efd,
                         cb1.cre_usr_id,
                         cb1.uui
                   VALUES
                        (tfc.NEXTVAL,
                         dual1.cs,
                         (SELECT ta.as
                          FROM   tac ta
                          WHERE  ta.acn         = '145'
                          AND    ta.ent = 2),    
                         dual1.fs,
                         3,
                         '145',
                         '28-OCT-09',
                         'A',
                         'A'
                        );When i try to run this , get
    Error report:
    SQL Error: ORA-38101: Invalid column in the INSERT VALUES Clause: "acn"
    38101. 00000 - "Invalid column in the INSERT VALUES Clause: %s"
    *Cause:    INSERT VALUES clause refers to the destination table columns
    *Action:
    Now, when I try n remove the alias name from the insert clause, i.e.
    MERGE INTO tfc         cb1
                   USING (SELECT 5351    fs,
                                 1    cs
                          FROM   DUAL)       dual1
                        ON (cb1.fs           =    dual1.fs
                            AND cb1.asgn_cs  =    dual1.cs)
              WHEN MATCHED
              THEN
                   UPDATE
                   SET       cb1.acn          =    '145'         ,
                             cb1.cbs       =    (SELECT ta.as
                                                        FROM   tac ta
                                                        WHERE  ta.acn         = '145'
                                                        AND    ta.ent = 2),
                             cb1.bfs    =    3  ,
                             cb1.efd     =    '28-OCT-09'   ,
                             cb1.uui     =    'A'  ,
                             cb1.ut          =    sysdate
                   WHERE     cb1.fs       =    5351
                   AND       cb1.asgn_cs  =    1
              WHEN NOT MATCHED
              THEN
                   INSERT
                        (cb1.fund_cbs,
                         cb1.asgn_cs,
                         cb1.cbs,
                         cb1.fs,
                         cb1.bfs,
                         cb1.acn,
                         cb1.efd,
                         cb1.cre_usr_id,
                         cb1.uui
                   VALUES
                        (tfc.NEXTVAL,
                         dual1.cs,
                         (SELECT as
                          FROM   tac
                          WHERE  acn         = '145'  -------- remove alias from here i.e. 'ta'
                          AND   ent = 2),    
                         dual1.fs,
                         3,
                         '145',
                         '28-OCT-09',
                         'A',
                         'A'
                        );The above statement fine.
    Edited by: user8650395 on Mar 12, 2010 6:10 AM
    Edited by: user8650395 on Mar 12, 2010 6:19 AM

    Hi,
    Nice formatting!
    The first value in the INSERT clause looks suspicious:
    MERGE INTO tfc         cb1
                   INSERT
                        (cb1.fund_cbs,
                         cb1.asgn_cs,
                         cb1.cbs,
                         cb1.fs,
                         cb1.bfs,
                         cb1.acn,
                         cb1.efd,
                         cb1.cre_usr_id,
                         cb1.uui
                   VALUES
                        (tfc.NEXTVAL,     ...If tfc is a table name, then it can't be a sequnece name.
    Perhaps you meant something like
    ...            VALUES
                        (tfc_id_seq.NEXTVAL,     ...I hope that solves the problem.
    If not, post a little sample data (CREATE TABLE and INSERT statements) for the tables as they exist before the MERGE.
    Edited by: Frank Kulash on Mar 12, 2010 9:34 AM

  • Why does a standalone program created in Labview 8.5 try connecting to the internet when the program only reads data through the serial port? Firewalls object to progams that contact the internet without permission.

    why does a standalone program created in Labview 8.5 try connecting to the internet when the program only reads data through the serial port? Firewalls object to progams that contact the internet without permission.
    The created program is not performing a command I have written when it tries to connect to the internet, it must be Labview that is doing it. How do I stop this from happening? 
    Any help would be very appreciated.

    It looks that way..
    "When LabVIEW starts it contacts the service
    locator to removes all services for itself. This request is triggering
    the firewall.This is done in case there were services that were not
    unregistered the last time LabVIEW executed- for example from VIs that
    didn't clean up after themselves"
    This is not yet fixed in LV2009.
    Message Edited by Ray.R on 11-04-2009 12:25 PM

  • Ways to get data from the internet with XCode and Objective-C

    Hey guys,
    Thanks in advance for any help. I was simple wondering what the best ways are to get data from the internet to use in an application. For example, is it best to store the data in a MySQL database with PHP and then use C code and MySQL commands to get that data from my Mac app? Is JSON better? Any help would be awesome!
    Josh

    What kind of data are you after?
    Eric

  • ORA-13033 ORA-06512 at 11.1.0.7

    I have a single shape that seems to cause ORA-13033 at 11.1.0.7 but not at 11.1.0.6. Wondering if I am missing something stupid, or if anyone else has seen this problem. I did a quick search of the posts, but didn't find anything. It could also be that spatial has a problem on the 11.1.0.7 server...
    Thanks
    --on 11.1.0.7
    SQL> drop index foo_spatial_index;
    Index dropped.
    SQL> drop table foo;
    Table dropped.
    SQL> delete from user_sdo_geom_metadata where table_name = 'FOO';
    1 row deleted.
    SQL>
    SQL> create table foo (shape sdo_geometry);
    Table created.
    SQL> insert into foo values (SDO_GEOMETRY(3002, NULL, NULL, SDO_ELEM_INFO_ARRAY(1, 4, 1, 1, 2, 2), SDO_ORDINATE_ARRAY(484893.192, 1845442.68
    , 0, 484881.786, 1845444.7, .5, 484871.639, 1845450.28, 1)));
    1 row created.
    SQL> insert into user_sdo_geom_metadata values('FOO', 'SHAPE', SDO_DIM_ARRAY(SDO_DIM_ELEMENT(NULL, 484719.102, 484904.266, .0000005), SDO_DI
    M_ELEMENT(NULL, 1845366.11, 1845513.86, .0000005), SDO_DIM_ELEMENT(NULL, 0, 5368.70912, .0000005)), null );
    1 row created.
    SQL> create index foo_spatial_index on foo(shape) indextype is mdsys.spatial_index;
    create index foo_spatial_index on foo(shape) indextype is mdsys.spatial_index
    ERROR at line 1:
    ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine
    ORA-13249: internal error in Spatial index: [mdidxrbd]
    ORA-13249: Error in Spatial index: index build failed
    ORA-13249: Error in spatial index: [mdrcrtxfergm]
    ORA-13249: Error in spatial index: [mdpridxtxfergm]
    ORA-13200: internal error [ROWID:AAFV8VAAHAAAGUtAAA] in spatial indexing.
    ORA-13206: internal error [] while creating the spatial index
    ORA-13033: Invalid data in the SDO_ELEM_INFO_ARRAY in SDO_GEOMETRY object
    ORA-06512: at "MDSYS.SDO_INDEX_METHOD_10I", line 10
    --on a different 11.1.0.6
    SQL> drop index foo_spatial_index;
    drop index foo_spatial_index
    ERROR at line 1:
    ORA-01418: specified index does not exist
    SQL> drop table foo;
    drop table foo
    ERROR at line 1:
    ORA-00942: table or view does not exist
    SQL> delete from user_sdo_geom_metadata where table_name = 'FOO';
    0 rows deleted.
    SQL>
    SQL> create table foo (shape sdo_geometry);
    Table created.
    SQL> insert into foo values (SDO_GEOMETRY(3002, NULL, NULL, SDO_ELEM_INFO_ARRAY(1, 4, 1, 1, 2, 2), SDO_ORDINATE_ARRAY(484893.192, 1845442.68
    , 0, 484881.786, 1845444.7, .5, 484871.639, 1845450.28, 1)));
    1 row created.
    SQL> insert into user_sdo_geom_metadata values('FOO', 'SHAPE', SDO_DIM_ARRAY(SDO_DIM_ELEMENT(NULL, 484719.102, 484904.266, .0000005), SDO_DI
    M_ELEMENT(NULL, 1845366.11, 1845513.86, .0000005), SDO_DIM_ELEMENT(NULL, 0, 5368.70912, .0000005)), null );
    1 row created.
    SQL> create index foo_spatial_index on foo(shape) indextype is mdsys.spatial_index;
    Index created.

    There are a couple of things wrong with your geometry.
    The specs says that for compound geometries (sdo_etype = 4) the SDO_INTERPRETATION (in this case with sdo_etype = 4) gives the numeber of subelements. This must be bigger then 1:
    http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28400/sdo_objrelschema.htm#BGHDGCCE
    4
    n > 1
    Compound line string with some vertices connected by straight line segments and some by circular arcs. The value n in the Interpretation column specifies the number of contiguous subelements that make up the line string.
    The next n triplets in the SDO_ELEM_INFO array describe each of these subelements. The subelements can only be of SDO_ETYPE 2. The last point of a subelement is the first point of the next subelement, and must not be repeated.
    In your case you either have single line string which makes the first triplet incorrect or even unnecessary in the SDO_ELEM_INFO, or you are missing a third triplet in the SDO_ELEM_INFO.
    You should always validate your geometries first, if you do that also on your 11.1.0.6 version you will get:
    SDO_GEOM.VALIDATE_GEOMETRY_WITH_CONTEXT
    54506 Point:0,Edge:2,
    ORA-54506: compound curve not supported for 3-D geometries
    Cause: The 3-D geometry contained one or more compound curves, which are not
    supported for 3-D geometries.
    Action: Remove all compound curves from the geometry.
    As you will see additionally compound curveare not supported in 3D geometries.
    IF it is not a compound (so with SDO_ELEM_INFO_ARRAY = (1,2,2), you will see that this geometry will validate.
    Looks like the validation might be incorporated now in the index creation in 11.1.0.7.
    Edited by: lucvanlinden on Mar 20, 2009 9:07 AM

  • Plz help ...Error on data insert ORA-01722 :invalid number

    Hi everybody
    I have the strange situation
    I tested my code on test database It works well
    but when another user want insert new data on the same table on the working database Oracle give message ORA-01722 :invalid number
    and then I look to table's structure
    On the table my data type that i want insert and table type is same
    Plz help ...

    sriram wrote:
    Based on your Input I can give you
    ORA-01722:     invalid number
    Cause:     The attempted conversion of a character string to a number failed because the character string was not a valid numeric literal. Only numeric fields or character fields containing numeric data may be used in arithmetic functions or expressions. Only numeric fields may be added to or subtracted from dates.
    Action:     Check the character strings in the function or expression. Check that they contain only numbers, a sign, a decimal point, and the character "E" or "e" and retry the operationI checked input value and table column type are same Because of i can't understand this error message

  • DBMS_LOB.ISOPEN throws the error ora-22275 invalid lob locator

    DBMS_LOB.ISOPEN throws the error below error.
    ora-22275 invalid lob locator
    The below assume that i am getting the v_lob_length as empty. But i am getting error when it comes to DBMS_LOB.ISOPEN.
    Please correct me if i am wrong.
    here is my code:
    DBMS_LOB.createtemporary(v_xml_clob, TRUE);
    DBMS_LOB.open(v_xml_clob, DBMS_LOB.lob_readwrite);
    SELECT  DBMS_XMLGEN.getxml ('SELECT object_name, object_type from dba_objects where rownum <= 5')
    INTO    v_xml_clob
    FROM    DUAL;
    v_lob_length    := NVL(DBMS_LOB.getlength(v_xml_clob),0);
    v_index       := 1;
    fnd_file.put_line(fnd_file.log,'v_lob_length : '||v_lob_length);
    WHILE v_index <= v_lob_length
    LOOP
        v_read_cnt   := 32767;
        DBMS_LOB.read (
              v_xml_clob,
              v_read_cnt,
              v_index,
              v_chunk
        fnd_file.put(fnd_file.output,v_chunk);
        v_index := v_index + v_read_cnt;
    END LOOP;
    IF DBMS_LOB.ISOPEN(v_xml_clob) = 1
    THEN
        DBMS_LOB.close(v_xml_clob);
        DBMS_LOB.freetemporary(v_xml_clob);
    END IF;

    Most likely v_xml_clob is NULL so you'd rather check IF v_xml_clob IS NOT NULL AND DBMS_LOB.ISOPEN(v_xml_clob) = 1
    THENbye
    TPD

  • "ORA-1722 Invalid number" error while runing a SQL script in SQL*Plus

    Hello,
    I created a SQL script that is intended to populate tables with
    baseline data. When I run the script in the SQL*Plus program
    that comes with the Oracle 8.1.6 (client), I receive an "ORA-
    1722 Invalid number".
    The error always occurs when SQL*Plus tries to execute the
    following SQL statement:
    insert into components(db_ind,module_id,ext_compid,active) values
    ('cm',modules_seq.currval,1046682,'y');
    The datatypes for the columns on the components table are as
    follows:
    db_ind varchar2(2);
    module_id number;
    ext_compid number;
    active varchar2(1);
    It seems that for some reason Oracle is having trouble
    recognizing 1046682 as a number.
    I also tried the following INSERT statements to see if that
    would work:
    insert into components(db_ind,module_id,ext_compid,active) values
    ('cm',modules_seq.currval,to_number('1046682'),'y');
    insert into components(db_ind,module_id,ext_compid,active) values
    ('cm',modules_seq.currval,'1046682','y');
    but I still receive the same error message
    Is there some NLS setting(s) I need to modify so that Oracle
    does not give me this error? Does anyone know the answer to
    this problem?
    Your help is greatly appreciated.
    Oscar
    (NOTE: I also receive this same error when trying run the
    script in SQL Navigator and Toad programs)

    Please see the following docs.
    R12: JBO-27122 Error Message Clicking On Supplier Accounting Link With Unexpected Error [ID 1218903.1]
    Supplier Management Accounting Link Gives Unexpected Error and JBO-27122 at SELECT * FROM (select pvsa.ADDRESS_STYLE [ID 1340655.1]
    Adding Accounting Information or Operating Unit Information fails with APP-FND-1564: ORACLE error 1722 in FDFGVD [ID 364265.1]
    Thanks,
    Hussein

  • Oracle SQL Developer 1.1.1.25.14, I rror ORA-01722 Invalid Number

    I have installed the new version of Oracle SQL Developer 1.1.1.25.14, I use Oracle 9.2. When I browse in the tree of the stored procedures and compile I obtain Error ORA-01722 Invalid Number. The previous version does not give this error. I have tried to change the decimal separator to comma ',' and point '.' but this error always appears.

    create or replace
    PROCEDURE getAge (
    dtmDataStart_in IN DATE,
    dtmDataEnd_in IN DATE,
    intYears_out OUT NUMBER,
    intMonths_out OUT NUMBER,
    intDays_out OUT NUMBER) AS
    -- Calcola il numero di anni, mesi, giorni intercorsi
    -- dalla data iniziale alla data finale.
    -- Se la data iniziale è > della data finale, le due date
    -- vengono scambiate e le variabili di output vengono ritornate
    -- con segno negativo.
    --==================================================
    -- Data Ultima Modifica: 31/07/98
    -- Aggiunta procedura per il calcolo della differenza tra
    -- due date dello stesso anno.
    --==================================================
    -- DICHIARAZIONE VARIABILI INIZIO --------------------------------------------------------
    intYMDStart NUMBER(10);
    intYMDEnd NUMBER(10);
    intYMD NUMBER(10);
    intDiffAnni NUMBER(5);
    intDiffMesi NUMBER(5);
    intDiffGiorni NUMBER(5);
    intMeseStart NUMBER(5);
    intAnnoStart NUMBER(5);
    intTotGiorniMeseStart NUMBER(5);
    ysnNegativo NUMBER(5);
    -- DICHIARAZIONE VARIABILI FINE ----------------------------------------------------------
    BEGIN
    intYMDStart := TO_NUMBER( TO_CHAR(dtmDataStart_in,'YYYYMMDD'));
    intYMDEnd := TO_NUMBER( TO_CHAR(dtmDataEnd_in,'YYYYMMDD'));
    ysnNegativo := 0;
    IF intYMDStart = intYMDEnd THEN
    intYears_out := 0;
    intMonths_out := 0;
    intDays_out := 0 ;
    ELSE
    IF intYMDStart > intYMDEnd THEN
    intYMD := intYMDStart;
    intYMDStart := intYMDEnd;
    intYMDEnd := intYMD;
    ysnNegativo := -1;
    END IF;
    intDiffAnni := TO_NUMBER(TO_CHAR(dtmDataEnd_in,'YYYY')) - TO_NUMBER(TO_CHAR(dtmDataStart_in ,'YYYY'));
    intDiffMesi := TO_NUMBER(TO_CHAR(dtmDataEnd_in,'MM')) - TO_NUMBER(TO_CHAR(dtmDataStart_in ,'MM'));
    intDiffGiorni := TO_NUMBER(TO_CHAR(dtmDataEnd_in,'DD')) - TO_NUMBER(TO_CHAR(dtmDataStart_in ,'DD'));
    -- I valori cosi' calcolati di intDiffAnni, intDiffMesi e intDiffGiorni vanno bene
    -- ad eccezione dei seguenti casi:
    -- Sistemo intDiffAnni
    IF (intDiffMesi > 0 OR (intDiffMesi = 0 AND intDiffGiorni >= 0)) THEN
    -- intDiffAnni e' OK
    intDiffAnni := intDiffAnni;
    ELSE
    -- non e' ancora arrivato il giorno del compleanno
    intDiffAnni := intDiffAnni-1;
    END IF;
    -- Sistemo intDiffMesi
    IF (intDiffMesi > 0 AND intDiffGiorni < 0) THEN
    intDiffMesi := intDiffMesi-1;
    ELSIF (intDiffMesi < 0 ) THEN
         if(intDiffGiorni<0) THEN
         intDiffMesi := intDiffMesi+11;
    else
         intDiffMesi := intDiffMesi+12;
    END IF;
    ELSIF (intDiffMesi=0 AND intDiffGiorni<0) THEN
         intDiffMesi:=11;
    END IF;
    -- Sistemo intDiffGiorni
    -- Calcolo i giorni come (TotGiorniMeseIniziale - GiornoIniziale) + (GiornoFinale - 0)
    -- che e' uguale a fare TotGiorniMeseIniziale + (GiornoFinale-GiornoIniziale)
    IF intDiffGiorni < 0 THEN
    intMeseStart := TO_NUMBER(TO_CHAR(dtmDataStart_in ,'MM'));
    IF intMeseStart IN (1,3,5,7,8,10,12) THEN
    intTotGiorniMeseStart := 31;
    ELSIF intMeseStart = 2 THEN
    -- Da enciclopedia: sono bisestili gli anni multipli di 4
    -- esclusi i secoli che non sono multipli di 400 (Parte commentata).
    intAnnoStart := TO_NUMBER(TO_CHAR(dtmDataStart_in ,'YYYY'));
    if (intAnnoStart MOD 4) = 0
    -- AND NOT ((intAnnoStart MOD 100) = 0 AND (intAnnoStart MOD 400) <> 0)
    Then
    intTotGiorniMeseStart := 29;
    else
    intTotGiorniMeseStart := 28;
    end if;
    ELSIF intMeseStart IN (4,6,9,11) THEN
    intTotGiorniMeseStart := 30;
    END IF;
    intDiffGiorni := intDiffGiorni + intTotGiorniMeseStart;
    END IF;
    IF ysnNegativo = 0 THEN
    intDays_out := intDiffGiorni;
    intMonths_out := intDiffMesi;
    intYears_out := intDiffAnni;
    ELSE
    intDays_out := intDiffGiorni * (-1);
    intMonths_out := intDiffMesi * (-1);
    intYears_out := intDiffAnni * (-1);
    END IF;
    END IF;
    EXCEPTION
    WHEN OTHERS THEN
    RAISE;
    END getAge;
    The output result of compilation is "GETAGE Compiled", I think the 01722 error is not caused from an sql syntax error, but probably caused from an invalid or unsupported or 'strange' configuration on nationalization... the fact surprises me that the previous version did not give problems
    THANKS SO MUTCH
    */

  • Insert into table error - ora-01722 invalid number

    Need some assistance with inserting data into a table. The date column keeps on failing to insert.
    here is my insert statement
    insert into tab_mod_history (TABLE_OWNER, TABLE_NAME, PARTITION_NAME, SUBPARTITION_NAME, INSERTS, UPDATES, DELETES, TIMESTAMP, TRUNCATED)
    values ('$i_owner','$i_table','$i_part_name','$i_subpart_name','$i_ins','$i_upd','$i_del','$time','$trunc');Script loads data for partition tables, but not normal tables with the timestamp column
    I select the data using this select statement:
    select table_owner, table_name, partition_name, subpartition_name, inserts, updates, deletes, timestamp, truncated
    from dba_tab_modifications
    where table_owner in ('scott','MAC')
    order by table_name;

    ok here are the errors:
    values ('MAC','WC_MST','11','1','1','12/04/2011','NO','','')
    ERROR at line 2:
    ORA-01722: invalid number
    Session altered.
    values ('MAC','WF_05A','208','128','208','18/02/2011','NO','','')
    ERROR at line 2:
    ORA-01722: invalid numberHere is the table structure
    SQL> desc tab_mod_history
    Name                                      Null?    Type
    TABLE_OWNER                                        VARCHAR2(30)
    TABLE_NAME                                         VARCHAR2(30)
    PARTITION_NAME                                     VARCHAR2(30)
    SUBPARTITION_NAME                                  VARCHAR2(30)
    INSERTS                                            NUMBER
    UPDATES                                            NUMBER
    DELETES                                            NUMBER
    TIMESTAMP                                          DATE
    TRUNCATED                                          VARCHAR2(3)
    DROP_SEGMENTS                                      NUMBERI used the column names to create the variables..that is why $time was used.
    How else could I have done it????
    thought this was easy..but to my dismay...

  • TO_NUMBER and ORA-01722 invalid number pls delete

    I cannot see where to delete a post I made. I found out my problem. It was in my NLS settings. Decimals were set to be commas instead of periods.
    please disregard this post, and delete if you are a moderator
    I recently tried to bring in lat/long coordinates from a VARCHAR2 field (and even as a flat file) into a NUMBER field with a setup of NUMBER(20,13) to ensure I'd capture all of the signifigant digits.
    I even ran this through a procedure to check if the data is a number first, and update only. I've found however that I keep getting the ORA-01722 invalid number error.
    So I started testing out some points, and came across this:
    select to_number('-79.662965387') from dual;
    this query results in the invalid number error. I don't want to have to load these as an SDO GEOMETRY object, has anyone encountered this scenario before?
    Or is my choice of 13 decimal places too high for Oracle?

    I just ran that code in my database (10g) and it returned this
    select to_number('-79.662965387') from dual;
    TO_NUMBER('-79.662965387')
                    -79.662965
    1 row selected.Message was edited by:
    Tridith

  • ORA-01722 happen when using the cursor

    This is my cursor declaration:
    CURSOR cP_PROFILE_SKU_ID(pBusiness_partner_id IN BUSINESS_PARTNER.BUSINESS_PARTNER_ID%TYPE,
    pClient VARCHAR2 ) IS
    SELECT record_id
    FROM pending_changes
    WHERE UPPER(field_name) = 'BUSINESS_PARTNER_ID'
    AND UPPER(table_name) = 'PROFILE_SKUS'
    AND client = pClient
    AND approved_code = 'P'
    AND pending_value = pBusiness_partner_id;
    When I try to user this cursor:
    FOR rP_PROFILE_SKU_ID IN cP_PROFILE_SKU_ID(pBusiness_partner_id => rBusiness_partner.business_partner_id,
    pclient =>rBusiness_partner.client) LOOP
    END LOOP;
    The error showed:
    ORA-01722
    Even there is no any record in this cursor
    Thanks
    Chen Zhang

    Hi,
    I think the datatypes / data contents are not matching while passing parameters in the cursor.
    ORA-01722: invalid number
    Cause: The attempted conversion of a character string to a number failed because the character string was not a valid numeric literal. Only numeric fields or character fields containing numeric data may be used in arithmetic functions or expressions. Only numeric fields may be added to or subtracted from dates.
    Action: Check the character strings in the function or expression. Check that they contain only numbers, a sign, a decimal point, and the character "E" or "e" and retry the operation.
    Thanks,
    Biswa.
    <BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">quote:</font><HR>Originally posted by chen_zhang:
    This is my cursor declaration:
    CURSOR cP_PROFILE_SKU_ID(pBusiness_partner_id IN BUSINESS_PARTNER.BUSINESS_PARTNER_ID%TYPE,
    pClient VARCHAR2 ) IS
    SELECT record_id
    FROM pending_changes
    WHERE UPPER(field_name) = 'BUSINESS_PARTNER_ID'
    AND UPPER(table_name) = 'PROFILE_SKUS'
    AND client = pClient
    AND approved_code = 'P'
    AND pending_value = pBusiness_partner_id;
    When I try to user this cursor:
    FOR rP_PROFILE_SKU_ID IN cP_PROFILE_SKU_ID(pBusiness_partner_id => rBusiness_partner.business_partner_id,
    pclient =>rBusiness_partner.client) LOOP
    END LOOP;
    The error showed:
    ORA-01722
    Even there is no any record in this cursor
    Thanks
    Chen Zhang<HR></BLOCKQUOTE>
    null

  • ORA-01722: invalid number - when last column has numbers that has a decimal seperator

    Below is the sample data -
    FRT,1.64,VAT,23.36
    FRT,1.64,VAT,23.36
    When I try to convert 1.64 to to_number all is good but when I do the same with 23.36 I get the following error
    ORA-29913: error in executing ODCIEXTTABLEFETCH callout
    ORA-01722: invalid number
    ORA-06512: at "SYS.ORACLE_LOADER", line 52
    I tried this query as well
    select to_number(CONSIGNMENT_NET_VALUE) as Col1 from DUMP_EXT
    select to_number(CONSIGNMENT_NET_VALUE,'9999999999D99999','NLS_NUMERIC_CHARACTERS='',.''' ) as Col1 from DUMP_EXT --> 268906.1
    getting the same error - any help greatly appreciated.
    T.
    Srini

    Hi,
    You can check this test case
    SQL> !cat a.txt
    FRT,1.64,VAT,23.36
    FRT,1.64,VAT,56.36
    FRT,1.64,VAT,23.36
    SQL> create table DUMP_EXT
        Charge_ID_FRT VARCHAR2(50),
        Net_Amount_VAT VARCHAR2(50),
        Charge_ID_VAT VARCHAR2(50),
        Consignment_Net_Value VARCHAR2(50)
    ORGANIZATION EXTERNAL
        (TYPE ORACLE_LOADER
        DEFAULT DIRECTORY DATA_DD_DIR
        ACCESS PARAMETERS
            (RECORDS DELIMITED BY '\n'
            SKIP 1
            BADFILE 'bad_%a_%p.bad'
            LOGFILE 'log.log'
            FIELDS TERMINATED BY ','
            MISSING FIELD VALUES ARE NULL
            REJECT ROWS WITH ALL NULL FIELDS
                Charge_ID_FRT CHAR(50),
                Net_Amount_VAT CHAR(50),
                Charge_ID_VAT CHAR(50),
                Consignment_Net_Value CHAR(50)
        LOCATION ('a.txt')
    reject limit 0;
      2    3    4    5    6    7    8    9   10   11   12   13   14   15   16   17   18   19   20   21   22   23   24   25   26   27   28 
    Table created.
    SQL> select charge_id_frt,net_amount_vat,charge_id_vat,consignment_net_value from dump_ext;
    CHARG NET_AMOUNT_VAT                                     CHARG CONSIGNMENT_NET_VALUE
    FRT   1.64                                               VAT   56.36
    FRT   1.64                                               VAT   23.36
    --- Get Error here
    SQL> select to_number(CONSIGNMENT_NET_VALUE,'99D99','NLS_NUMERIC_CHARACTERS='',.''' ) as Col1 from DUMP_EXT
      2  /
    select to_number(CONSIGNMENT_NET_VALUE,'99D99','NLS_NUMERIC_CHARACTERS='',.''' ) as Col1 from DUMP_EXT
    ERROR at line 1:
    ORA-29913: error in executing ODCIEXTTABLEFETCH callout
    ORA-01722: invalid number
    -- Check the Variable at DB level
    SQL>   SELECT value   FROM NLS_DATABASE_PARAMETERS  WHERE parameter='NLS_NUMERIC_CHARACTERS';
    VALUE
    -- Use the Query like
    SQL> select to_number(CONSIGNMENT_NET_VALUE,'99D99','NLS_NUMERIC_CHARACTERS=''.,''' ) as Col1 from DUMP_EXT;
          COL1
         56.36
         23.36
    HTH

  • Can I exit from paintComponent?  ...or... how can I check for invalid data?

    I'm writing a calendar applet for a programming class and I've nearly completed it but I'm stuck at checking for valid data.
    What seems to be happening is that paintComponent() is being called before actionPerformed.
    In actionPerformed (when they click the button), it checks to make sure they entered a valid month (1 to 12). If the didn't it dispalys a message, but if they did it calls repaint().
    But even if repaint() isn't called, Java still seems to call it before actionPerformed and I get exceptions.
    So I tried checking inside of paintComponent() by using a simple if(...) return; but that doesn't seem to do anything... it just keeps going through with the method.
    So -- Once the user presses my button I want to make sure the data is valid before repainting the screen. How can I do this?

    I validate it in actionPerformed which is called by
    the action listener... that is what you meant right?
    The problem is that it seems paintComponent() is being
    called before I can validate the data with
    actionPerformed(). I need to stop paintComponent()
    from always being calledMVC. (Model, View, Controller)
    Initially the internal value of the data (the model) should be valid (or null with a check in the paintComponent method)
    paintComponent (the view part) shows the state of the valid data.
    You press the button.
    actionPerformed is called (the controller).
    It checks the value and, if valid, writes it to the data (model), then updates the view.
    At no point will the view have to render invalid data, because the model is only updated after actionPerformed checks the value.
    The pattern may be applied with different classes performing the three roles, or different methods in the same class (sometimes it's easier that way for simple cases).
    Pete

  • Getting error while creating form and report on webservice: ORA-20001: Unable to create form on table. ORA-02263: need to specify the datatype for this column.

    i am using the following description to create a web service reference:
    web reference :REST
    Name :Yahoo Map
    URL :http://local.yahooapis.com/MapsService/V1/mapImage
    HTTP Method: GET
    Basic Authentication: No
    Add Parameter:
    Name       Type
    appid        String
    location    String
    Output Format: XML
    XPath to Output Parameters : /Result
    Output Parameter:
    Name       Path       Type
    Url          /text()      String
    Then i tried to create form and report on webservice:
    Web Service Reference Type: Yahoo Map
    Operation: doREST
    All the fields i keep as default
    I tick the checkbox (url)in report Parameter
    After clicking next whereever required i click create button
    I get the following error
    ORA-20001: Unable to create form on table. ORA-02263: need to specify the datatype for this column.
    Please someone help to solve this as i need to fix it urgently.

    i exported the application from apex.oracle.com and imported it to our environment
    import went fine, but when I ran the IR page I got
    ORA-20001: get_dbms_sql_cursor error ORA-00904: : invalid identifier
    evidently the problem is a lack of public execute on DBMS_LOB, which is used in the generated IR source.
    while waiting for the DBA to grant privs on DBMS_LOB, changing the dbms_lob.getlength call to length() fixes the IR.
    however, i am not getting the download link on the associated form page... changed templates, that's not the issue -- we'll see if that's a dbms_lob issue as well

Maybe you are looking for

  • Site is blank in IE, works in Firefox

    Hi, im a newbie to Flash, been working on template sites, which i can kind of get around without too much trouble. I have a problem at the moment with a site that works fine in Firefox (unsure of other '3rd party' browsers) but comes up blank with IE

  • Script for extracting multiple pages

    Hi, I'm working with the default "extract pages" script: http://livedocs.adobe.com/acrobat_sdk/9.1/Acrobat9_1_HTMLHelp/JS_API_A croJS.88.465.html I want to modify it to extract 2 pages at a time.  For example, say I start with a 6-page document.  I w

  • Function module to read/write notes in the planning book

    Hi All, Can you guyz tell me the FMs to read / write NOTES in the planning book. Notes as in you can right click on a cell of PB and do display notes. win full points for the answer. Thanks - Chandan

  • IMac G4:  How to re-format without a CD Drive?

    I have had an old iMac for years and it's bee gathering dust.  I would like to wipe the hard drive and restore Tiger to factory settings but the disc drive inside will not read.  Is there a way to re-format and re-install without the need for the dis

  • How to do archieve using SARA and FILE transaction

    Hi, I am using ECC6. i have requirement to do archiving. Please suggest me how to do archive using FILE and SARA. Regards, Asif