Checking table index consistency

Hi Gurus,
I wanted to know to check the table consistency(for indexes) and how to find out how do they differ from the previous versions.
Thanks,
Mike

hi jo,
new versions of tables will be delivered in each release.
so while upgrading u need to use the tranasctio SPAD for importing the changes from prev release.
>>"index does not exist in database system ORACLE" means indexes have not been created in your database.in such case u need to activate the table.also use the path which i have given above for checking the consistency of your table.Also check with your BASIS if problem still persists..
Cheers,
Abdul Hakim

Similar Messages

  • New tables & indexes created do not show up in dba_segments view

    Dear all,
    I have created 3 tables and some indexes, but these objects do not show up in dba_segments view. Is this a normal behaviour? Previously, with dictionary managed tablespace, I can specify the minimum extent to create, when the table/index is created. But I'm not sure how the locally managed tablespace work. Please do advice. Thank you very much in advance.
    I'm using Oracle 11g R2 (11.2.0.1.0) for Microsoft Windows (x64), running on Windows 7.
    For the purpose of reproducing this issue, I have created the tablespaces as follow:
    CREATE TABLESPACE CUST_DATA
    DATAFILE 'd:\app\asus\oradata\orcl11gr2\CUST_DATA01.DBF' SIZE 512K
    AUTOEXTEND ON NEXT 256K MAXSIZE 2000K
    EXTENT MANAGEMENT LOCAL UNIFORM SIZE 256K
    SEGMENT SPACE MANAGEMENT AUTO;
    CREATE TABLESPACE CUST_INDX
    DATAFILE 'd:\app\asus\oradata\orcl11gr2\CUST_INDX.DBF' SIZE 256K
    AUTOEXTEND ON NEXT 128K MAXSIZE 2000K
    EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K
    SEGMENT SPACE MANAGEMENT AUTO;
    CREATE TABLE CUSTOMER_MASTER (CUST_ID VARCHAR2 (10),
    CUST_NAME VARCHAR2 (30),
    EMAIL VARCHAR2 (30),
    DOB DATE,
    ADD_TYPE CHAR (2) CONSTRAINT CK_ADD_TYPE CHECK (ADD_TYPE IN ('B1','B2','H1','H2')),
    CRE_USER VARCHAR2 (5) DEFAULT USER,
    CRE_TIME TIMESTAMP (3) DEFAULT SYSTIMESTAMP,
    MOD_USER VARCHAR2 (5),
    MOD_TIME TIMESTAMP (3),
    CONSTRAINT PK_CUSTOMER_MASTER PRIMARY KEY (CUST_ID) USING INDEX TABLESPACE CUST_INDX)
    TABLESPACE CUST_DATA;
    SQL> SELECT TABLE_NAME, TABLESPACE_NAME
    2 FROM USER_TABLES
    3 WHERE TABLE_NAME LIKE 'CUST%';
    TABLE_NAME TABLESPACE_NAME
    CUSTOMER_MASTER CUST_DATA
    SQL> SELECT INDEX_NAME, TABLESPACE_NAME
    2 FROM USER_INDEXES
    3 WHERE TABLE_NAME LIKE '%CUST%';
    INDEX_NAME TABLESPACE_NAME
    PK_CUSTOMER_MASTER CUST_INDX
    SQL> SELECT SEGMENT_NAME, SEGMENT_TYPE, TABLESPACE_NAME, BYTES
    2 FROM USER_SEGMENTS;
    no rows selected

    Prior to 11g, when you created a table or whatever, you automatically allocated one extent.
    This is now no longer true and depends on a parameter I don't remember.
    dba_segments is a summary of dba_extents.
    Obviously, if there is no extent allocated, the table (view is defined with inner join) will not show up.
    You could qualify this is as a bug and submit a SR to Oracle. But then the performance impact may be huge.
    Sybrand Bakker
    Senior Oracle DBA

  • BWA Fact Table Index Size

    Hi
    Can anybody tell me how the BWA decides when a fact table index gets split into multiple parts? We have a number of very large cubes that are indexed and some have a fact table index that consists of one logical index which is made up of multiple physical indexes but other, similar sized cubes, just have one very large physical index for the fact table.
    With the one very large physical index we seem to get an overload problem but when they are split into multiple parts we don't.
    Thanks
    Martin

    Hi Martin,
    this depends on the reorg config and the attribute of the index. You can manually trigger a splitting of an index via command 'ROUNDROBIN x', x stand for the number of parts which the index will be split to. Therefore you have to go into trexadmin standalone tool -> landscape right click on index -> split/merge index...
    If you want an automatically split, you have to setup your reorg settings. Goto trexadmin standalone tool -> tab reorg -> options -> here you can choose the type of algorithm. Have a look into note 1313260 and 1163149.
    Do you have a scheduled reorg job?
    Regards,
    Jens
    PS: Every black box can be understood...

  • How to check table is creating or not

    Hi,
    I am creating only one table by running a table creation script(table.sql) which contain 366 partition.but I dont know whether table is creating or not.it is taking long time,sometimes I feel like script is hanging.even before running the script I have even spooled but spool file shows nothing. so how to check table is creating or not from background? can anyone please let me know abt this.this is bit urgent
    sql>spool table.log
    sql>@table_partition.sql

    hi,
    I am running the script table_partition which consist of 366 partition and 31 sub partition but the script is hanging.there is no hint in alert log file or anything wat might be the reason is it because of extent size? as extent size for this tablespace where table has to be create is 1mb,wat i suspect is do i need to set for higher value inorder to avoid this?
    with regards;
    Boo

  • Problem with table-indexes when using select-options in select

    Hello experts,
    is it right that table-indexes will not be used if you take select-options to select data from the database?
    in detail:
    i have build up an table-index for one of our db-tables and test it via an test-programm. The first test with '=' comparisons worked fine. Every key of the index was used; checked via ST05!
    e.g.:    SELECT * FROM TABLEA INTO ITAB WHERE keya = '1' AND keyb = '2' AND keyc = '3'.
    Now i startet the test with select-options
    e.g.:   SELECT * FROM TABLEA INTO ITAB WHERE keya IN seltabA  AND keyb IN seltabB AND keyc IN seltabC.
    First of all i just filled the seltabs with only 1 value:    eg:  seltabA=      SIGN = 'I'   OPTION = 'EQ'   LOW = '1'     etc.
    Everything worked fine. Every key of the index was used.
    But now, I putted more than one entries in the seltabs e.g.
    seltabA:      SIGN = 'I'   OPTION = 'EQ'   LOW = '1'
                       SIGN = 'I'   OPTION = 'EQ'   LOW = '2'   
                       SIGN = 'I'   OPTION = 'EQ'   LOW = '3'
    From now on, the indexed was not used completely (with all keys).
    Isn't that strange? How can i use select-options or sel-ranges with using the complete table-indexes?
    Thanks a lot,
    Marcel

    Hi Hermann,
    i hope this helps:
    this is the first one, which uses the complete index:
    SELECT                                                                     
      "KOWID" , "LIFNR" , "KLPOS" , "ORGID" , "KOART" , "MATNR" , "GLTVON" ,   
      "GLTBIS" , "WERT" , "ABLIF" , "FAKIV" , "AENAM" , "AEDAT" , "AFORM" ,    
      "HERSTELLER" , "ARTGRP" , "OE_FREITXT" , "ARTFREITEXT" , "STATUS" ,      
      "TERDAT"                                                                 
    FROM                                                                       
      "/dbcon/01_con"                                                       
    WHERE                                                                      
      "MANDT" = ? AND "LIFNR" = ? AND "ORGID" = ? AND "KOART_BASIS" = ? AND    
      "STATUS" = ? AND "GEWAEHR_KOWID" < ? AND ( "STATUS" = ? OR "STATUS" = ? OR
      "STATUS" = ? )  WITH UR                 
    RESULT: 5 IXSCAN /dbcon/01_con05 #key columns:  4
    And the second one, which does not use the complete index! The 3 ranges are filled each with 2 values. Remember; when i fill them each with only one value, the result is the same as you can see above(/dbcon/01_con05 #key columns:  4):
    SELECT                                                                     
      "KOWID" , "LIFNR" , "KLPOS" , "ORGID" , "KOART" , "MATNR" , "GLTVON" ,   
      "GLTBIS" , "WERT" , "ABLIF" , "FAKIV" , "AENAM" , "AEDAT" , "AFORM" ,    
      "HERSTELLER" , "ARTGRP" , "OE_FREITXT" , "ARTFREITEXT" , "STATUS" ,      
      "TERDAT"                                                                 
    FROM                                                                       
      "/dbcon/01_con"                                                       
    WHERE                                                                      
      "MANDT" = ? AND "LIFNR" IN ( ? , ? ) AND "ORGID" IN ( ? , ? ) AND        
      "KOART_BASIS" IN ( ? , ? ) AND "GEWAEHR_KOWID" < ? AND ( "STATUS" = ? OR 
      "STATUS" = ? OR "STATUS" = ? )  WITH UR                                  
    and here the access-plan
       0 SELECT STATEMENT ( Estimated Costs =  5,139E+01 [timerons] )                                                                               
    5     1 RETURN                                                                               
    5     2 NLJOIN                                                                               
    5     3 [O] TBSCAN                                                                               
    5     4 SORT                                                                               
    5 TBSCAN GENROW                                                                               
    5     6 <i> FETCH /dbcon/01_con                                                                               
    7 IXSCAN /dbcon/01_con05 #key columns:  2   
    As you can see, only 2 keys were taken for indexed selection!
    Any idea?
    Kind regards,
    MArcel
    Edited by: Marcel Ebert on Jul 28, 2009 5:25 PM

  • Error: No first field of table index in where condition

    I've got following errors while doing code inspector or extended syntax check:
    (Large table VEKP: No first field of table index in where condition).
    My code is like below as per as code-logic.
    What's the necessary changes to do to remove the above code?
    SELECT VENUM
                 BRGEW
                 BTGEW
                 BTVOL
                 VOLEH
                 VHILM
                 LMENG
                 BREIT
                 HOEHE
                 MEABM
                 VPOBJKEY
                 FROM VEKP
                 INTO TABLE i_vekp
                 WHERE vpobjkey = w_mkpf-xblnr.
    IF sy-subrc = 0.
    SORT i_vekp BY venum.
    ENDIF.
    How can I remove the error? How to use index in where clause I'm not getting and on which key? or, should I use the statement "EC C1_NOFIRST to remove the error?
    Kindly guide.

    > should I use the statement "EC C1_NOFIRST to remove the error?
    you can not really ask this question in this forum. This check gives you hints to the most serious problems in database accesses, if you want to override it, then you should better forget about performance.
    If you are not familiar how databases use indexes, then check resources in the net or in books, in
    short they use indexes and the indexes are absolutly necessary with large tables, if you want to get
    good performance.
    But indexes can only be used in the order of their field, until a field is not used in the WHERE-condition, (gap). If the gap is already the first field, then the index can not be used at all.
    In your case there is not first field of any index specified in the WHERE condition, so the SELECT might be slow. Either you can add a condition on a first index field or you have to live with a poor performance.
    Siegfried

  • DB02old  showing Missing in R/3 DDIC Tables & Indexes in BI 7.0 system

    Hi,
    Db02old showing missing in R/3 DDIC Tables & Indexes ,Details given below.
                                        Tables          Indexes
    Total number                        63,413          88,532
    Total size/kb                1,208,272,704     227,436,608
    More than 1 extent                 16,499           6,629
    Missing in database                 0               0
    Missing in R/3 DDIC                 5               1
    Space-critical objects              0               0
    Unknown indexes in ABAP Dictionary
         DB indexes                       1
             /BIC/E101128~900
    Unknown objects in ABAP Dictionary
        DB tables                        5
            /BI0/1ASSET
            /BI0/1ASSET_CLAS
            /BIC/E100219
            /BIC/F101145
            /BIC/F101153
    Why it is showing ? Please advise.
    Thnks&Rgds,
    Ganga.

    Hi Bhaskar,
    I have done the below process
    In T-code DB02 Menu "Go TO" -> Table and Indices -> DB <-> ABAP Dic<->Display
    It is showing the below details
    Other checks
    Tables 1
    SCI_TEMPT Should not be created in DB
    I have select the SCI_TEMPT table and clicked on create in DB.
    After that again I have checked the db02 t-code again it is showing the same.
    Please let me know how can fix this issue.
    Regards,
    Reddy V.

  • Table & Index Compression on 11g

    Hi,
    We are planning to upgrade oracle ( RAC ) from 10.2.0.4  to 11.2 and planning to turn on table and index compression. I would like to learn the pros & cons of turning compression on in a 6TB database. Any performance issues after table/index compression .
    Thanks
    Prince Jose

    Hey Prince,
    Just check out the below thread if it can give you some idea for the same...
    Re: Index Compression in SAP - system/basis tables?

  • Way to find Missing table Index in SAP ?

    Hi All,
    Is there any way to check missing tables index in SAP?
    and also DB size ? and reorganize the index and tables?
    Cheers
    Usman

    Hi Usman,
    Transaction <b>SE14, DB02</b> .. program to reorganize the index and tables .. <b>Report RSSDBREO </b>
    Db Size :<b>Tr.DB02</b> Perform DB Check and you will get the size.
    Or you can check on your database server sap data files systems. so you will know gross size of your DB.
    Thanks
    Saquib Khan
    Message was edited by: Saquib Khan

  • Check for index existing

    I'm a DBA working with 3 application developers, they want to know how to check for index existing for certain column
    in a table in their schema,
    one friend told me , to check for index existing for certain column you have to query
    the view dba_ind_columns so you have to be a sysdba user
    but I don't want to grant the application developers the sysdba privilage
    but my friend told me , to avoid grant sysdba to the application developers, they can query the view user_indexes in their schema, but after watching the view user_indexes ,
    it gives me a lot of data but doesn't give me the COLUMN NAME
    how can I solve this problem which is :
    Allow the application developers to check for index existing for certain column in their schema without granting them sysdba privilage.

    You can use that query:
    select ai.index_name INDEX_NAME,
    substr(ic.column_name, 1, 30) COLUMN, ic.column_position POSITION,
    ic.table_name TABLE,
    ai.tablespace_name TABLESPACE
    from all_ind_columns ic, all_indexes ai
    where ai.index_name = ic.index_name and ai.table_name = 'TABLE_NAME' and ai.table_owner='OWNER'

  • ST04 -table index info.

    Hi,
    In ST04 I check the table index information for one table there I noticed that  Last statistics date is 02.01.2006  and CHAIN COUNT is 1850 also the table is having  a large no of records so will it affect the performance of the table. if so then what is the necessary action we should take and what is the  ideal conditions for this or is there any rule set by SAP .
    Please help.
    With Regards
    Vinayak

    Hi Vinayak,
    what database version are you using and/or how are you updating your statistics (dbms_stats/ analyze)?
    CHAIN COUNT 1850
    first of all, CHAIN COUNT is only determined with analyze, not with dbms_stats.
    This means your value of 1850 is as of the last statistics date done with analyze.
    If you switched to dbms_stats (which was recommended) your chain count remains
    on that value but your last statistics date is changed with each following dbms_stats run.
    Your chain count value therefore might be much older than the last analyzed date if you
    are using dbms_stats since then.
    So if your are using dmbs_stats, get the current chain count with analyze.
    If the number is still high check the row length if < 8kb and nr. of fields < 255 a reorganization
    could eliminate your chained rows. (If you have records that are longer than 8kb and/or more
    than 256 fields a reorganization could decrease the chained rows as well, for those records
    that are <8kb and spanning over more than one block, but chained count will not be zero).
    Generally speaking reducing chain count could reduce I/O (logical/physical).
    Get in contact with your DBA in order to get the current chain count and dependent on
    that reorganizing your table.
    Kind regards,
    Hermann

  • Error: Table /1FB/MD___M8006P error in DDIC - Check table with SE14

    Hi Friends,
    I've a problem related to the activation table, if I want to activated always problematic because there are fields POSITION, there are errors like this view :
    Activation of worklist (MST.EKA / 15.04.2011 / 11:20:59 /)
    =========================================================================
    Technical log for mass activation
       See log XXX 20110415112056:ACT
    TABL /1FB/MD___M8006P was not activated
    Check table /1FB/MD___M8006P (XXX/15.04.11/11:20)
    POSITION is a reserved word (Select another field name)
    Field name MANDT can be provided in this system. Please do not use.
    Field name SID can be provided in this system. Please do not use.
    Field name TABNAME can be provided in this system. Please do not use.
    Field name FIELDNAME can be provided in this system. Please do not use.
    Field name AS4LOCAL can be provided in this system. Please do not use.
    Field name AS4VERS can be provided in this system. Please do not use.
    Field name POSITION can be provided in this system. Please do not use.
    Index /1FB/MD___M8006P-01 is not in the customer namespace
    Table /1FB/MD___M8006P must be created in the database
    Check on table /1FB/MD___M8006P resulted in errors
    =========================================================================
    End of activation of worklist
    please guide what must I do ... ??
    Thanks
    Eka Sumargo

    Hi Eka,
    the acticvation will not work because of the existence of the field POSITION
    "POSITION is a reserved word"
    POSITION is a reserved word; these reserved words are stored in table
    TRESE, and the reason should be there also.
    You will have to change the field name for the activation to complete.
    Kind regards,
    Paul

  • Error: Table /1FB/MD___M8001X error in DDIC - Check table with SE14

    Hi Buddy,
    I have some trouble with copy client 000 to 400, Error: Table /1FB/MD___M8001X error in DDIC - Check table with SE14.
    TABL /1FB/MD___M8001X was not activated
    Check table /1FB/MD___M8001X (MST.EKA/14.04.11/10:33)
    POSITION is a reserved word (Select another field name)
    Field name MANDT can be provided in this system. Please do not use.
    Field name SID can be provided in this system. Please do not use.
    Field name TABNAME can be provided in this system. Please do not use.
    Field name FIELDNAME can be provided in this system. Please do not use.
    Field name AS4LOCAL can be provided in this system. Please do not use.
    Field name AS4VERS can be provided in this system. Please do not use.
    Field name POSITION can be provided in this system. Please do not use.
    Index /1FB/MD___M8001X-01 is not in the customer namespace
    Table /1FB/MD___M8001X must be created in the database
    Check on table /1FB/MD___M8001X resulted in errors
    how to solve this problem...??
    Thanks & Regards
    Eka Sumargo

    Hi MST Support
    Are there any other errors in SCC3. What kind of client copy you're performing SAP_ALL or CUST?
    As per the logs in your post it seems that the table MD___M8001X does not exist in the database.You could try SE11 or SE14 to check the table.
    Any other info would be really helpful.
    Regards,

  • Error in Creating Secondary Table Index

    Hi,
    I have created a secondary table index in a custom table. It was successful in DEV, no warning messages. however, when i transported it to the test environment, there was a warning message:
    Index does not exist in database system ORACLE
    The status is still active though. Is this an error which means the secondary index will not work properly?
    Please let me know.
    Thank you.

    Hi,
    check in SE14 - TABNAME - edit -  indexes - your index
    whether it exists on the database or not. If it does not exit
    create the index in the database.
    Kind regards,
    Hermann

  • Partitioned table Indexing

    Hi Experts,
    I wanted to repartition my cube, so I compressed my Cube and repartition on the basis of 0calmonth.
    Now When I check the Index structure of F and E fact table. F table has got Index 900 or Local Partition Index based on SID_0CALMONTH but E table does not have such kind of Index.
    Now my question is after compression my data is in E fact table and partitioined successfully, so how does this Index 900 help Fetching partitioned data from E fact table when it is based on F fact table ??
    Thanks & Regards,
    Subbuji

    Hi Suman,
    I am not seeing data in F table, obviously there will be no data in F table after compression.
    I am checking the Indices in F table and there I found Index 900, which is nothing but Index on Partition key.
    My Question is if  it is recommended to Partitiion after compression or Partition the E table then why the index is based on F table ? or why there is no such kind of index on E table.
    Thanks & Regards,
    Subbuji

Maybe you are looking for