ORA-02327: cannot create indexes on the LOB data type expression

DB 10.2.0.4
DB 5.2

I am not able to move lobindex and lobsegment. While try occurs below error

SQL > ALTER INDEX dev. "" SYS_IL0000718396C00002$ $"REBUILD THE TABLESPACE DATA_TEMP;
ALTER INDEX dev. "" SYS_IL0000718396C00002$ $"REBUILD TABLESPACE DATA_TEMP
*
ERROR on line 1:
ORA-02327: cannot create indexes on the LOB data type expression

Thank you

Published by: user13382934 on October 16, 2012 14:05

correct syntax is
ALTER TABLE.

MOVE the LOB ()
STORE AS (tablespace );

Where is a name of the / columns LOB, not the name of the segment. Moving type LOB data will move its indexes as well.

Tags: Database

Similar Questions

  • ORA-04089: cannot create triggers on the objects belonged to SYS

    I did a google on this error and it say that I should never get to anything to do with the system and also to make another account when executing my script, I did this, but I still get the error code and the error is less than

    REM **********************************************************************

    CREATE TABLE gam_attribute_bin (/ * gam_ab * /)

    attribute_owner_type char (1) NOT NULL, / * player Att, Att User Instance Att Att class.

    Class criteria, client static/Gulp * /.

    ATTRIBUTE_NAME VARCHAR2 (20) NOT NULL,

    owner_id NUMBER (10) NOT NULL, / * specific check-in attribute_owner * /.

    LONG RAW NULL binary_value

    ) TABLESPACE gam_lgtab STORAGE (INITIAL 256 K NEXT 256 K MAXEXTENTS PCTINCREASE 0 unlimited)

    /

    ALTER TABLE gam_attribute_bin ADD)

    CONSTRAINT gam_attribute_bin_pk

    UNIQUE (attribute_owner_type, owner_id, attribute_name)

    USING INDEX

    TABLESPACE gam_ind

    STORAGE (INITIAL 256 K NEXT 256 K MAXEXTENTS PCTINCREASE 0 unlimited)

    )

    /

    Suppression of REM binary attribute when necessary

    CREATE TRIGGER gam_att_delete

    AFTER YOU REMOVE gam_attribute

    FOR EACH LINE

    BEGIN

    IF (: old.attribute_data_type = 'B')

    THEN

    DELETE FROM gam_attribute_bin

    WHERE attribute_owner_type =: old.attribute_owner_type

    AND attribute_name =: old.attribute_name

    AND owner_id =: old.owner_id;

    END IF;

    END;

    /

    ERROR on line 1:

    ORA-04089: cannot create triggers on the objects belonged to SYS

    hope someone can help me clear this up thanks

    Hello

    You code works very well for me.  I had to change to run on my system tablespaces, but otherwise, what you posted worked for me when I tried (in a different schema than SYS, of course).

  • How to use the LOB data type?

    I can't create a table with the LOB data type.

    Do I need an additional parameter in sys.odbc.ini?

    My dsn information is

    [tpch]

    Driver=/home/TimesTen/TimesTen/tt1121/lib/libtten.so

    Data store = / home/timesten/TimesTen/tt1121/tpch/tpch

    LogDir = / home/timesten/TimesTen/tt1121/tpch/logs

    PermSize = 4096

    TempSize = 2048

    PLSQL = 1

    LOB = 1

    DatabaseCharacterSet = US7ASCII

    -bash-4, $ 1 ttdaemonadmin-version

    TimesTen Release 11.2.1.2.0

    There is no LOB = 1 attribute; Please, delete it from your definition ODBC to avoid potential errors.

    LOB support has been added in the major version 11.2.2 TimesTen. So you use 11.2.1 LOB is not available. If you want to use LOB data, then you must upgrade to 11.2.2.

    Chris

  • ORA-39080: cannot create queues during the backup from the rman catalog

    Hello
    I am trying to upgrade my database 10 g and 11 g and I'm trying to back up my rman catalog. However, I get an error. Can someone help me please-

    That's what I give-
    nohup expdp DIRECTORY = EXPORT_DIR userid=rman/adc1243@rmandb full = y job_name = full_rmandb_upg_exp DUMPFILE=EXPORT_DIR:rmandb_upg_exp%U_20100618.dmp LOGFILE = PARALLEL EXPORT_DIR:rmandb_upg_exp_20100618 = 3 &

    and I get this-

    Oracle @ < progd1 >: / home/oracle $tail f nohup.out
    ORA-31626: there is no job
    ORA-31637: could not create user RMAN FULL_RMANDB_UPG_EXP work
    ORA-06512: at "SYS." DBMS_SYS_ERROR', line 95
    ORA-06512: at "SYS." "KUPV$ FT_INT", line 600
    ORA-39080: cannot create queues ' KUPC$ C_1_20100618202950 ' and ' KUPC$ S_1_20100618202950 ' to Data Pump task
    ORA-06512: at "SYS." DBMS_SYS_ERROR', line 95
    ORA-06512: at "SYS." ' KUPC$ QUE_INT ', line 1606
    ORA-04031: unable to allocate 56 bytes of shared memory ('pool feed', 'unknown object', 'pool feed', 'set the allocation callback')

    ORA-04031: unable to allocate 56 bytes of shared memory ('pool feed', 'unknown object', 'pool feed', 'set the allocation callback')

    04031, 00000, "unable to allocate %s bytes of shared memory (\"%s\",\"%s\",\"%s\",\"%s\")"
    // *Cause:  More shared memory is needed than was allocated in the shared
    //          pool.
    // *Action: If the shared pool is out of memory, either use the
    //          DBMS_SHARED_POOL package to pin large packages,
    //          reduce your use of shared memory, or increase the amount of
    //          available shared memory by increasing the value of the
    //          initialization parameters SHARED_POOL_RESERVED_SIZE and
    //          SHARED_POOL_SIZE.
    //          If the large pool is out of memory, increase the initialization
    //          parameter LARGE_POOL_SIZE.  
    

    Stream uses system global area (SGA) memory to store the information required to capture and apply. To allocate memory from the SGA for use by water courses, establish a flow pool in the SGA by specifying the STREAMS_POOL_SIZE parameter. The default value for this setting is 0, which means that the stream instead uses the shared pool memory. If you leave the STREAMS_POOL_SIZE to its default value (0), water courses will be considering using up to 10 percent of the SHARED_POOL_SIZE, then Oracle recommends at least 200 MB for the STREAMS_POOL_SIZE parameter. The source and destination databases must take account of this memory in the SGA.

    Published by: sb92075 on June 18, 2010 19:17

  • Cannot create indexes on the flow table

    Hello

    I'm new to ODI.

    The problem is that during the execution of an interface, I get the error of the "IKM Oracle Dimension to slow variation"

    The command in step "Create unique index on the flow table:

    creating index < % = odiRef.getTable ("L", "INT_NAME", "A") % > idx

    on < % = odiRef.getTable ("L", "INT_NAME", "A") % > (< % = odiRef.getColList ("", "[column]", ",", "", "SCD_NK") % >)

    < % = odiRef.getUserExit ("FLOW_TABLE_OPTIONS") % >

    generate the following statement which lacks the name of the column between the (_)

    Create index I$ _MYTABLE_idx

    I have $_MYTABLE)

    NOLOGGING

    The result is that the interface fails with the error 936: 42000: java.sql.SQLException: ORA-00936: lack of expression caused by the previous command wrong.

    Please, can you help me?

    Thank you very much

    Angelo

    Hello

    I'm really really sorry! I just realized that you are working on the SCD. Basically, you are looking for all the column mapped as SCD_NK (key to slowly change natural Dimensions) insofar as shown here

    Substitution QAnywhere

    IF you need to read this

    SCD Type 2 - ODIExperts.com

    Let me know.

  • Syntex to create the table with the long data type

    I'm looking to create a table based on another table that having the column long data type. Throw the error ORA-00997: illegal use of the LONG data type


    I tired it

    create table abc_long (ag bgd long number);

    create table abc_long_dummy as ( ) Select *of abc_long); - ORA-00997 error: illegal use of the LONG data type

    How to get there?

    I'm looking to create a table based on another table that having the column long data type.

    You really don't want to do that.

    LONG data type has been deprecated for some time now, use CLOB.

    The TO_LOB() function will do the conversion on the fly:

    create table abc_long_dummy
    as
    select ag
         , to_lob(bgd) as bgd
    from abc_long ;
    
  • ORA-19504: cannot create the file '+ DATA '.

    Hello everyone.

    This is the scenario:

    We have a test server that is used to restore daily backups of the Production database. Restore us the database with the same SID as the production one.

    For specific reasons, we need create a second database (with a different SID) on this server with an older backup from the production one. To realize that I'm trying to use a part of the "DUPLICATE without connection to the target" tutorials on the web.

    I tried the simple guide that I found which is:

    (1) copy the backup files cold /somedirectory

    (2) start OLD database with nomount

    (3) connect RMAN with OLDER as an auxiliary

    (4) run the following: DUPLICATE DATABASE FOR OLD BACKUP LOCATION ' / somedirectory' NOFILENAMECHECK.

    Here's the result (I deleted some lines because of the size of it):

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

    RMAN > ProdDB to OlderDB DUPLICATE DATABASE

    2 > LOCATION of BACKUP "/ home/oracle/OlderBackupFiles.

    3 > NOFILENAMECHECK.

    4 >

    From October 1, 14 Db double

    content of Script memory:

    {

    clone of SQL 'alter system set control_files =

    "+DATA/OlderDB/controlfile/current.829.859839217" comment =

    ' Set by RMAN "scope = spfile;

    clone of SQL 'alter system set = db_name

    "ProdDB" comment =

    ' Modified by RMAN duplicate "scope = spfile;

    clone of SQL 'alter system set db_unique_name =

    "OlderDB" comment =

    ' Modified by RMAN duplicate "scope = spfile;

    clone to stop immediately;

    Start clone force nomount

    Restore controlfile primary clone of ' / home/oracle/OlderDB/controlfile_ProdDB_20141001_4159.bkp';

    change the clone database mount;

    }

    execution of Script memory

    SQL statement: alter system set control_files = comment "+DATA/OlderDB/controlfile/current.829.859839217" = "defined by RMAN" scope = spfile

    SQL statement: change the system db_name set = comment "ProdDB" = "modified by RMAN duplicate" scope = spfile

    SQL statement: alter system set db_unique_name = comment "OlderDB" = "modified by RMAN duplicate" scope = spfile

    (...)

    From restoration to 1 October 14

    allocated channel: ORA_AUX_DISK_1

    channel ORA_AUX_DISK_1: SID = 191 type device = DISK

    channel ORA_AUX_DISK_1: restore the control file

    channel ORA_AUX_DISK_1: restoration complete, duration: 00:00:03

    output file name=+DATA/OlderDB/controlfile/current.829.859839217

    Restoration finished in October 1, 14

    mounted database

    output channel: ORA_AUX_DISK_1

    allocated channel: ORA_AUX_DISK_1

    channel ORA_AUX_DISK_1: SID = 191 type device = DISK

    content of Script memory:

    {

    until the SNA 274262921.

    the value of newname for datafile clone 1 again;

    the value of newname for datafile clone 2 again.

    the value of newname for datafile clone 3 again.

    the value of newname for datafile clone 4 new ones;

    the value of newname for datafile clone 5 again.

    the value of newname for datafile clone 6 again.

    the value of newname for datafile clone 7 again.

    restoration

    database clone;

    }

    (...)

    From restoration to 1 October 14

    using the ORA_AUX_DISK_1 channel

    channel ORA_AUX_DISK_1: from the restore backup set data file

    channel ORA_AUX_DISK_1: specifying datafile (s) to restore from backup set

    channel ORA_AUX_DISK_1: restore datafile 00001 to + DATA

    channel ORA_AUX_DISK_1: restore datafile 00002 to + DATA

    channel ORA_AUX_DISK_1: restore datafile 00003 to + DATA

    channel ORA_AUX_DISK_1: restore datafile 00004 in + DATA

    channel ORA_AUX_DISK_1: restore datafile 00005 to + DATA

    channel ORA_AUX_DISK_1: restore datafile 00006 to + DATA

    channel ORA_AUX_DISK_1: restore datafile 00007 to + DATA

    channel ORA_AUX_DISK_1: reading from the backup /home/oracle/OlderDB/database_ProdDB_20141001_4157.bkp piece

    channel ORA_AUX_DISK_1: ORA-19870: error when restoring the backup /home/oracle/OlderDB/database_ProdDB_20141001_4157.bkp piece

    ORA-19504: cannot create the file '+ DATA '.

    ORA-17502: ksfdcre:4 cannot create the file + DATA

    ORA-15041: diskgroup space 'DATA' exhausted

    switch to the previous backup

    Oracle instance started

    (...)

    content of Script memory:

    {

    clone of SQL 'alter system set = db_name

    "OlderDB" comment =

    ' Restore the original value by RMAN "scope = spfile;

    clone of SQL 'alter system reset db_unique_name scope = spfile;

    clone to stop immediately;

    }

    execution of Script memory

    Errors in the script of the memory

    RMAN-03015: an error has occurred in the script stored memory Script

    RMAN-06136: the auxiliary database ORACLE error: ORA-01507: database not mounted

    ORA-06512: at "SYS." "X$ DBMS_RCVMAN ', line 13466

    ORA-06512: at line 1

    RMAN-05556: not all data files have backups can be recovered on SNA 274262921

    RMAN-03015: an error has occurred in the script stored memory Script

    RMAN-06026: some targets not found - abandonment of restoration

    RMAN-06023: no backup or copy of the file 4 found to restore

    RMAN-06023: no backup or copy of datafile 3 found to restore

    RMAN-06023: no backup or copy of datafile 2 found to restore

    RMAN-06023: no backup or copy of datafile 1 found to restore

    RMAN-00571: ===========================================================

    RMAN-00569: = ERROR MESSAGE STACK FOLLOWS =.

    RMAN-00571: ===========================================================

    RMAN-03002: failure of the command duplicate Db at 15:39:11 01/10/2014

    RMAN-05501: abandonment of duplicate target database

    Complete recovery manager.

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

    The first mistake of the stack was ORA-19504 while trying to restore the backup of the database.

    First thing I took a glance was ASM occupation but it enough available space.

    The second was a permission problem, but it doesn't seem to be the case because RMAN can correctly write the controlfile to ASM.

    One have some advice on what I should look for?

    Thanks in advance sorry for my English.

    Select this option.

    Hello.

    Thanks, but is not the case. As I have said, that the DATA diskgroup has space enough he uses only a single disk in a RAID.

    But I solved my problem... To the auxiliary database, I added the following to the spfile:

    DB_FILE_NAME_CONVERT = '+ DATA/ProdDB', '+ DATA/OlderDB ".

    LOG_FILE_NAME_CONVERT = '+ DATA/ProdDB', '+ DATA/OlderDB ".

    I don't know why, but with these two clauses, it worked well. Perhaps RMAN was trying to restore it to the wrong place?

  • ORA-12913 cannot create the dictionary managed during import tablespace

    Greetings,
    I'm a newbie om moving databases between servers.

    I get the following error: "ora-12913 cannot create tablespace dictionary managed" when executing the data pump import. It is a 10.2.0.4 database that I'm moving from HP - UX PA-RISC to HP-UX-Itanium. It seems that all managed tablespaces locally were ok. Some of the successful dictionary tablespaces had problems (DRSYS, INDX, RBS, TOOLS)

    Should I convert all tablespaces dictionary managed locally managed tablespaces before data pump export/import? Note that this is a very small database with little use, then what better practical performance I'd like to hear.

    Thanks colin

    Published by: YJC on Aug 17, 2010 15:16

    >
    (1) should all be converted to Locall managed?
    (2) can the RBS safely deleted, given that an UNDO tablespace that uses the DB.
    >

    Only the SYSTEM will have to be migrated to managed locally. The RBS tablespace can be deleted if there is a separate UNDO tablespace and the database uses undo automatic management.

    HTH
    Srini

  • Cannot start db &gt; ORA-09925: cannot create the audit trail file

    version 10.1.0.5.0
    AIX 3 5 00C9CEA04C00 dcxnim01

    When I'm trying to start db, getting this message any idea?

    SQL > connect virtue sysdba;
    ERROR:
    ORA-09925: cannot create the audit trail file
    IBM AIX RISC System/6000 error: 89: invalid file system control data detected
    Additional information: 9925
    ORA-09925: cannot create the audit trail file
    IBM AIX RISC System/6000 error: 89: invalid file system control data detected
    Additional information: 9925


    Here's the tail of the log of alerts

    3 Private_strands to the log command
    Thread 1 Advanced for you connect to sequence 3923
    Currently journal # 1, seq # 3923 mem # 0: /db01/oradata/ldapdcx1/ldapdcx1/redo01.log
    Fri 6 Aug 16:48:34 2010
    Errors in the /oracle/admin/ldapdcx1/bdump/ldapdcx1_j001_991348.trc file:
    [ORA-07445: exception encountered: core dump [] [] [] [] []]
    Fri 6 Aug 16:48:35 2010
    Errors in the /oracle/admin/ldapdcx1/bdump/ldapdcx1_mmnl_508106.trc file:
    [ORA-07445: exception encountered: core dump [] [] [] [] []]
    Fri 6 Aug 16:48:38 2010
    Errors in the /oracle/admin/ldapdcx1/bdump/ldapdcx1_ckpt_839714.trc file:
    [ORA-07445: exception encountered: core dump [] [] [] [] []]
    ORA-27072: IO file error
    IBM AIX RISC System/6000 error: 5: i/o error
    Additional information: 9
    Additional information: 3
    Fri 6 Aug 16:48:38 2010
    Errors in the /oracle/admin/ldapdcx1/bdump/ldapdcx1_lgwr_905470.trc file:
    [ORA-07445: exception encountered: core dump [] [] [] [] []]
    ORA-27063: number of bytes read or written is incorrect
    IBM AIX RISC System/6000 error: 5: i/o error
    Additional information:-1
    Additional information: 1024
    Fri 6 Aug 16:49:07 2010
    Errors in the /oracle/admin/ldapdcx1/bdump/ldapdcx1_pmon_848078.trc file:
    ORA-00470: LGWR process ended with the error

    IBM AIX RISC System/6000 error: 5: i/o error
    Additional information:-1

    Problem of the OS.
    What is the problem at the level of the BONE with the disc?

    unpacking of tail - 100

  • Why I can't create indexes on the table of RDF data

    When I tried to create indexes on the table of RDF data, it always say the table or view does not exist. I created the RDF model using java codes:

    Oracle Oracle = new Oracle ("jdbc:oracle:thin:@localhost:1521:orcl", "system", "123");

    Chart GraphOracleSem = new GraphOracleSem (oracle, "test2");


    And used the following commands in sqlplus to create indexes:

    SQL >

    SELECT THE SEPARATE OWNER, OBJECT_NAME

    FROM DBA_OBJECTS

    WHERE TYPE_OBJET = 'TABLE '.

    4. AND OBJECT_NAME like ' % TEST2;

    OWNER

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

    OBJECT_NAME

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

    SYSTEM

    TEST2_NS

    SYSTEM

    RDFB_TEST2

    SYSTEM

    TEST2_TPL

    OWNER

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

    OBJECT_NAME

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

    SYSTEM

    RDFC_TEST2


    SQL > connect as sysdba

    Enter the password:

    Connected.

    SQL >

    SQL >

    SQL > select * from TEST2_TPL;

    Select * from TEST2_TPL

    *

    ERROR on line 1:

    ORA-00942: table or view does not exist

    SQL > CREATE INDEX test2_sub_idx ON TEST2_TPL (triple. GET_SUBJECT());

    CREATE INDEX test2_sub_idx ON TEST2_TPL (triple. GET_SUBJECT())

    *

    ERROR on line 1:

    ORA-00942: table or view does not exist

    Hi Shifu,

    It is not recommended to use the SYS or SYSTEM to store/manage schema graph RDF data.

    Can you please try the following in a SQL * more terminal?

    SQL > conn system/eu1

    Connected.

    SQL >

    SQL >

    SQL > create user graphuser identified by graphuser;

    Created by the user.

    SQL > grant connect, resources, unlimited tablespace to graphuser;

    Grant succeeded.

    SQL > conn graphuser/graphuser

    Connected.

    SQL > create table graph_tpl (triple sdo_rdf_triple_s) compress;

    Table created.

    SQL > sem_apis.create_sem_model exec ('graphic', 'graph_tpl', 'three');

    PL/SQL procedure successfully completed.

    SQL > insert into graph_tpl values (sdo_rdf_triple_s ('graph', '', '', ''));

    1 line of creation.

    SQL > select count (1) in the mdsys.rdfm_graph;

    1

    You see the same result?

    Thank you

    Zhe Wu

  • "Getting Started" VM said "ORA-01471: cannot create a synonym.

    People,

    I downloaded the VM with demo integration OGG + ODI for 12.1.3, as well as the PDF "Getting Started with Oracle Data Integrator 12 c". Try step 10.3.2 on pg 92: "Initial running load staged Mapping", but it throws the error message:

    ODI-1228: task Create synonym on target-LKM Oracle for Oracle (DBLINK) - fails when connecting the TRG_ODIDEMO target.

    Caused by: java.sql.SQLException: ORA-01471: cannot create a synonym with the same name as the object

    He told the truth, I tried the code in sqlplus with the same error:

    SQL > conn odi_staging/oracle;

    Connected.

    SQL > create synonym ODI_STAGING. C$ _0OGG_CUSTOMER1 for ODI_STAGING. C$_0OGG_CUSTOMER1@ORCL;

    ERROR on line 1:

    ORA-01471: cannot create a synonym with the same name as the object

    Initially, the definition of database server did not have the Instance = orcl inside, I added and got the same error with and without "orcl". Why is this happening? Another odd piece that may be associated with: I tried this mapping even earlier, and it got stuck on the front line, trying to create a view, but was insufficient privs for ODI_STAGING select the ogg_customer table. So I just did "grant dba to odi_staging;" and that was not enough! Tried stop/start ODI, then the DB without change. Hmmm, s/n role not enough? I've also had "grant select any table of odi_staging;", then this line worked.

    Back to the current problem: I can get the other procs to run, as the Clean Up target tables works very well, and the demo Client works very well.

    (1) anyone has experience this problem of synonym?

    (2) no matter who else get it to work?

    -Thanks, Steve F.

    I got the fix in the product manager. There are two very similar LKMs:

    • LKM Oracle for Oracle (DBLINK) (must be imported)
    • LKM Oracle for Oracle shoot (DB Link). GLOBAL (integrated)

    Of course, they look the same to me except that the second works and one doesn't. In all honesty, the book on pg 89 says 'Pull' in the name. Chalk it up to user error. Detective Conan.

  • How to create indexes on the ordered collection of XMLTYPE table?

    I use Oracle 11.2.0.2.

    Basically, my XML documents have a 3-level hierarchy:

    event

    + - action [1: n]

    + - param [1: n]

    I try to create indexes on the tables of the orderly collection, but cannot get the right syntax...

    I created a table with an XMLType object-relational column:

    CREATE TABLE T_C_RMP_MNTRNG_XML_FULL_IL4 (
      MESSAGE_ID NUMBER(22,0) NOT NULL ENABLE,
      XML_EVAL_ID NUMBER(22,0),
      VIN7 VARCHAR2(7 BYTE),
      FLEET_ID VARCHAR2(50 BYTE),
      CSC_SW_VERSION VARCHAR2(100 BYTE),
      RECEIVED DATE,
      XML_CONTENT SYS.XMLTYPE ,
      DWH_LM_TS_UTC DATE NOT NULL ENABLE,
      CONSTRAINT PK_C_RMP_MNTRNG_XML_FULL_IL4 PRIMARY KEY (MESSAGE_ID)
    ) NOLOGGING TABLESPACE CATALOG
    VARRAY "XML_CONTENT"."XMLDATA"."action" STORE AS TABLE "T_OR_MON_ACTION" (
      NOLOGGING TABLESPACE "CATALOG"
      VARRAY "param" STORE AS TABLE "T_OR_MON_ACTION_PARAM" (
      NOLOGGING TABLESPACE "CATALOG"
      ) RETURN AS LOCATOR
    ) RETURN AS LOCATOR
    XMLTYPE XML_CONTENT STORE AS OBJECT RELATIONAL XMLSCHEMA "http://mydomain.com/cs.xsd" ELEMENT "monitoring";
    
    
    
    
    

    I execute the SELECT statement:

    SELECT EVENT_ID, ACTION_SUB_ID, MESSAGE_ID, ACTION_TYPE, UNIXTS_TO_DATE(ACTION_TIMESTAMP) ACTION_TIMESTAMP
    FROM T_C_RMP_MNTRNG_XML_FULL_IL4, 
    XMLTABLE( 
      'for $i1 in /monitoring , 
      $i2 in $i1/action            
      return element r {              
      $i1/eventId,              
      $i2            
      }' 
      PASSING XML_CONTENT COLUMNS 
      EVENT_ID VARCHAR(40) PATH 'eventId', 
      ACTION_SUB_ID INTEGER PATH 'action/actionSubId', 
      ACTION_TYPE VARCHAR2(100) PATH 'action/type', 
      ACTION_TIMESTAMP NUMBER(13,0) PATH 'action/time' 
    ) T2 
    WHERE ( 
      EVENT_ID IS NOT NULL AND ACTION_SUB_ID IS NOT NULL 
    )
    
    
    
    
    

    The plan of the explain command looks like this (sorry, don't know how to get it formatted any 'eye-team'):

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

    | ID | Operation | Name                        | Lines | Bytes | TempSpc | Cost (% CPU). Time |

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

    |   0 | SELECT STATEMENT |                             |  1609K |  6316M |       |  6110K (1) | 20:22:11 |

    |*  1 |  HASH JOIN |                             |  1609K |  6316M |   111 M |  6110K (1) | 20:22:11 |

    |   2.   TABLE ACCESS FULL | T_C_RMP_MNTRNG_XML_FULL_IL4 |   582K |   104 M |       |  5241 (1) | 00:01:03 |

    |*  3 |   TABLE ACCESS FULL | T_OR_MON_ACTION |    32 M |   117G |       |   105K (2) | 00:21:08 |

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

    Information of predicates (identified by the operation identity card):

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

    1 - access ("NESTED_TABLE_ID"= "T_C_RMP_MNTRNG_XML_FULL_IL4"." ("SYS_NC0001300014$")

    filter (CAST (SYS_XQ_UPKXML2SQL (SYS_XQEXVAL (SYS_XQEXTRACT ((SYS_XMLGEN ("T_C_RMP_MNTRN XMLCONCAT

    G_XML_FULL_IL4 ". "" $ SYS_NC00017 ", NULL, SYS_XMLCONV ("T_C_RMP_MNTRNG_XML_FULL_IL4". "SYS_NC00012$", 0.32,

    (('EC1EEF23FD023A27E04032A06D930A8D', 3, 3783, 1)), SYS_MAKEXML ('EC1EEF23FD023A27E04032A06D930A8D', 3780,

    'T_C_RMP_MNTRNG_XML_FULL_IL4 '. "' SYS_NC00008$ ', 'SYS_ALIAS_0 '. ((("' SYS_NC_ROWINFO$ ')),'/ ID ', NULL), 0,.

    0,20971520,0), 50.1, 2) AS VARCHAR (40)) IS NOT NULL)

    3 filter (CAST (TO_NUMBER (TO_CHAR ("SYS_ALIAS_0". "actionSubId")) AS INTEGER) IS NOT NULL) "

    Note

    -----

    -dynamic sample used for this survey (level = 2)

    -Construction detected no optimized XML (activate XMLOptimizationCheck for more information)

    The XML schema looks like this:

    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" xmlns:oraxdb="http://xmlns.oracle.com/xdb" oraxdb:storeVarrayAsTable="true" oraxdb:flags="2105639" oraxdb:schemaURL="http://mydomain.com/cs.xsd" oraxdb:schemaOwner="MYUSER" oraxdb:numProps="23">
      <xs:element name="monitoring" oraxdb:propNumber="3785" oraxdb:global="true" oraxdb:SQLName="monitoring" oraxdb:SQLType="monitoring755_T" oraxdb:SQLSchema="MYUSER" oraxdb:memType="258" oraxdb:defaultTable="monitoring757_TAB" oraxdb:defaultTableSchema="MYUSER">
        <xs:complexType oraxdb:SQLType="monitoring755_T" oraxdb:SQLSchema="MYUSER">
          <xs:sequence>
            <xs:element maxOccurs="unbounded" ref="action" oraxdb:propNumber="3780" oraxdb:global="false" oraxdb:SQLName="action" oraxdb:SQLType="action752_T" oraxdb:SQLSchema="MYUSER" oraxdb:memType="258" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false" oraxdb:SQLCollType="action756_COLL" oraxdb:SQLCollSchema="MYUSER"/>
            <xs:element ref="reservationType" oraxdb:propNumber="3781" oraxdb:global="false" oraxdb:SQLName="reservationType" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false"/>
            <xs:element ref="softwareVersion" oraxdb:propNumber="3782" oraxdb:global="false" oraxdb:SQLName="softwareVersion" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false"/>
            <xs:element ref="eventId" oraxdb:propNumber="3783" oraxdb:global="false" oraxdb:SQLName="eventId" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false"/>
            <xs:element ref="vin" oraxdb:propNumber="3784" oraxdb:global="false" oraxdb:SQLName="vin" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="action" oraxdb:propNumber="3790" oraxdb:global="true" oraxdb:SQLName="action" oraxdb:SQLType="action752_T" oraxdb:SQLSchema="MYUSER" oraxdb:memType="258" oraxdb:defaultTable="action754_TAB" oraxdb:defaultTableSchema="MYUSER">
        <xs:complexType oraxdb:SQLType="action752_T" oraxdb:SQLSchema="MYUSER">
          <xs:sequence>
            <xs:element ref="type" oraxdb:propNumber="3786" oraxdb:global="false" oraxdb:SQLName="type" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false"/>
            <xs:element maxOccurs="unbounded" ref="param" oraxdb:propNumber="3787" oraxdb:global="false" oraxdb:SQLName="param" oraxdb:SQLType="param749_T" oraxdb:SQLSchema="MYUSER" oraxdb:memType="258" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false" oraxdb:SQLCollType="param753_COLL" oraxdb:SQLCollSchema="MYUSER"/>
            <xs:element ref="actionSubId" oraxdb:propNumber="3788" oraxdb:global="false" oraxdb:SQLName="actionSubId" oraxdb:SQLType="NUMBER" oraxdb:memType="2" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false"/>
            <xs:element ref="time" oraxdb:propNumber="3789" oraxdb:global="false" oraxdb:SQLName="time" oraxdb:SQLType="NUMBER" oraxdb:memType="2" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="type" type="xs:string" oraxdb:propNumber="3791" oraxdb:global="true" oraxdb:SQLName="type" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:defaultTable="type751_TAB" oraxdb:defaultTableSchema="MYUSER"/>
      <xs:element name="param" oraxdb:propNumber="3794" oraxdb:global="true" oraxdb:SQLName="param" oraxdb:SQLType="param749_T" oraxdb:SQLSchema="MYUSER" oraxdb:memType="258" oraxdb:defaultTable="param750_TAB" oraxdb:defaultTableSchema="MYUSER">
        <xs:complexType oraxdb:SQLType="param749_T" oraxdb:SQLSchema="MYUSER">
          <xs:sequence>
            <xs:element minOccurs="0" ref="value" oraxdb:propNumber="3792" oraxdb:global="false" oraxdb:SQLName="value" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false"/>
            <xs:element ref="key" oraxdb:propNumber="3793" oraxdb:global="false" oraxdb:SQLName="key" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="value" type="xs:string" oraxdb:propNumber="3795" oraxdb:global="true" oraxdb:SQLName="value" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:defaultTable="value748_TAB" oraxdb:defaultTableSchema="MYUSER"/>
      <xs:element name="key" type="xs:string" oraxdb:propNumber="3796" oraxdb:global="true" oraxdb:SQLName="key" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:defaultTable="key747_TAB" oraxdb:defaultTableSchema="MYUSER"/>
      <xs:element name="actionSubId" type="xs:integer" oraxdb:propNumber="3797" oraxdb:global="true" oraxdb:SQLName="actionSubId" oraxdb:SQLType="NUMBER" oraxdb:memType="2" oraxdb:defaultTable="actionSubId746_TAB" oraxdb:defaultTableSchema="MYUSER"/>
      <xs:element name="time" type="xs:integer" oraxdb:propNumber="3798" oraxdb:global="true" oraxdb:SQLName="time" oraxdb:SQLType="NUMBER" oraxdb:memType="2" oraxdb:defaultTable="time745_TAB" oraxdb:defaultTableSchema="MYUSER"/>
      <xs:element name="reservationType" type="xs:string" oraxdb:propNumber="3799" oraxdb:global="true" oraxdb:SQLName="reservationType" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:defaultTable="reservationType744_TAB" oraxdb:defaultTableSchema="MYUSER"/>
      <xs:element name="softwareVersion" type="xs:string" oraxdb:propNumber="3800" oraxdb:global="true" oraxdb:SQLName="softwareVersion" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:defaultTable="softwareVersion743_TAB" oraxdb:defaultTableSchema="MYUSER"/>
      <xs:element name="eventId" type="xs:string" oraxdb:propNumber="3801" oraxdb:global="true" oraxdb:SQLName="eventId" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:defaultTable="eventId742_TAB" oraxdb:defaultTableSchema="MYUSER"/>
      <xs:element name="vin" type="xs:string" oraxdb:propNumber="3802" oraxdb:global="true" oraxdb:SQLName="vin" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:defaultTable="vin741_TAB" oraxdb:defaultTableSchema="MYUSER"/>
    </xs:schema>
    
    
    
    
    

    How can I create an index on these tables of the ordered collection to improve performance?

    I found the example at http://docs.Oracle.com/CD/E11882_01/AppDev.112/e23094/xdb_rewrite.htm#ADXDB5859 but am not able to apply to this particular case...

    Thank you in advance...

    If the schema is not annotated and XS: Integer and XS: String are mapped to types of data NUMBER and VARCHAR2 (4000), so you must use in your query to avoid typecasting unnecessary operations.

    You must also use XMLTABLEs chained when accessing a parent/child instead of a FLWOR expression relationship, otherwise the CBO cannot rewrite the XQuery query correctly (maybe it's fixed in the latest version).

    If you make these changes, the plan should show the cleaner predicates:

    SQL > SELECT EVENT_ID, MESSAGE_ID, ACTION_TYPE, ACTION_SUB_ID, ACTION_TIMESTAMP

    2 FROM test_table

    3 XMLTABLE ('/ monitoring ')

    4 COLUMNS XML_CONTENT OF PASSAGE

    5 WAY of VARCHAR2 (4000) EVENT_ID "ID."

    6 actions for XMLTYPE PATH 'action '.

    (7) T1,

    8 XMLTABLE ('/ action')

    Shares of PASSAGE 9 COLUMNS

    NUMBER of ACTION_SUB_ID 10 PATH "actionSubId."

    11 PATH of VARCHAR2 (4000) ACTION_TYPE "type."

    12 WAY of NUMBER ACTION_TIMESTAMP 'time '.

    (13) T2

    14 WHERE EVENT_ID IS NOT NULL

    15 AND ACTION_SUB_ID IS NOT NULL

    16;

    Execution plan

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

    Hash value of plan: 1763884463

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

    | ID | Operation | Name | Lines | Bytes | Cost (% CPU). Time |

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

    |   0 | SELECT STATEMENT |                 |   109.   220K |     6 (17). 00:00:01 |

    |   1.  THE MERGE JOIN.                 |   109.   220K |     6 (17). 00:00:01 |

    |*  2 |   TABLE ACCESS BY INDEX ROWID | TEST_TABLE |    11.   352.     2 (0) | 00:00:01 |

    |   3.    INDEX SCAN FULL | SYS_C007567 |    11.       |     1 (0) | 00:00:01 |

    |*  4 |   JOIN TYPE.                 |   109.   216K |     4 (25) | 00:00:01 |

    |*  5 |    TABLE ACCESS FULL | T_OR_MON_ACTION |   106 S 216K |     3 (0) | 00:00:01 |

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

    Information of predicates (identified by the operation identity card):

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

    2 - filter("TEST_TABLE".") (' SYS_NC00012$ ' IS NOT NULL)

    4 - access("SYS_ALIAS_0".") NESTED_TABLE_ID "=" TABLE_TEST. " ("' SYS_NC0000800009$ ')

    filter ("SYS_ALIAS_0". "NESTED_TABLE_ID"="TABLE_TEST" "." " ("SYS_NC0000800009$")

    5 - filter("SYS_ALIAS_0"." actionSubId» IS NOT NULL)

    Note

    -----

    -dynamic sample used for this survey (level = 2)

    Now, if it is still necessary, everything boils down to choosing a technique for index NULL values:

    -composite index with a column not zero or constant

    -FBI

    -bitmap image

    Choose the one that best fits your data, the selectivity and activity on the tables.

  • ORA-19504: cannot create file when using rman

    Hello
    on 10g bR2 on windows machine my rman backup failed on a drive mapped with following error message:
    ORA-19504: cannot create file when using rman

    What do you suggest me?

    I heard that RMAN cannot write to the mapped file system. Is this true? Some people proposed:

    OracleService must be run by OS user with permissions

    But what oracle service? Target or RMAN catalog database database?

    Thank you.

    You must change your environment, on metalink:

    How to configure RMAN to write about readers shared on Windows NT/2000
    DOC - ID: Note: 145843.1

    Werner

  • Creating indexes for the table

    can someone help me how to create indexes in the table. I m creating own table... I need to select a particular field in the table. So I need to calculate the index position. I use my code like this,

    This will returnthe number of columns in the table.

    Class array

    {

    private int Table_Index()
    {
    for (int x = 0; x)<>
    {
    table_index = x;
    }
    Return table_index;
    }

    }

    MainClass can I get this length of Index

    Table T1;

    int t1 is T1. Table_Index();

    This property returns my length (4) of table column

    Using this index (t1) I HAV to see what position I'm at table now...

    someone help me...

    You can use a listfield, he supports methods to get the selected row and its contents.

  • How to create indexes on the nested table.

    Hi all
    I held the syntax to create indexes on the nested table.

    I found below synta but when I try it with my table it gives me error

    CREATE UNIQUE INDEX indx_name
    ON nestedtablestore (NESTED_TABLE_ID, id);

    What is here NESTED_TABLE_ID & ID

    They are virtual your nested table

    Here is an example.

    create or replace type obj as object (no integer, address varchar2(100))
    /
    create or replace type tbl as table of obj
    /
    create table test_tbl (id integer, name varchar2(100), address tbl) nested table address store as address_nt
    /
    create unique index address_no_idx on address_nt (no, address)
    /
    

    Published by: Karthick_Arp on November 23, 2010 01:41

Maybe you are looking for

  • How to click to exit the page?

    How can I leave a page, when the screen is fully extended?

  • Satellite C660 - where is the HARD disk for installing XP driver?

    I have the Toshiba Satellite C660-1FL (PSC1JE-00800FRU).I would like to install Windows XP, but I see "stop error" during installation.I know I need press F6 to install driver from disc but WHERE I CAN GET? Thank you very much! Andrew

  • Qosmio F20 - 110 Cd writer problem.

    _Hello All_ Bear with me please im new to these boards. I have a problem with my Qosmio F20-110. It works with Media Center 2005 Edition and Im having problems with the CD burner. Everytime I try to produce an audio cd it will burn the first two song

  • Printing without margins and paper size selection

    I just bought the HP Photosmart 7510 (C311a) SN: {removed privacy}, I can't get an impression totally without borders.  I always find myself with a slight edge, and at the time that the photo is cropped.   Also, I had a 3210 that has all kinds of pap

  • HP PhotoSmart restricted 6525 in the wireless network connection

    Hello I need to connect my HP PhotoSmart 6525 to a wireless network in my college dorm room.  IT supports the University has published the requirements for the connection to the restricted network and attention that many printers cannot. I looked on