Shifting DB Objects into new table space

Hi Guys,
We did not create any tablespace and all the users and their objects that we have created so far are in system tablespace...
Now we have created a tablespace. How can we shift our objects, users and their tables, view, packages, triigers in new tablespace.
Please explain with example if possible. And how to delete the objects from system tablespace. Please explain in details.
Looking forward for your kind help.
Imran Baig

What about the packages, procedures and functions.Those objects, as views does not own a Data Segment, their definition is stored in system catalog. There's nothing you need to do, that's 100% OK.
is this commans necessary to run after all the tables are in new tablespace?
alter index xyz rebuild onlineYes. In fact, when moving a table, rebuilding its indexes must be done. As for me, it's best to rebuild the indexes just after the table is moved. You can create a package or procedure to do this.
Oh, bah, I can give you some code sample. It's a package I created some time ago that can generate object movement code depending on their size to move them to appropriately sized tablespaces (extent size, etc):create or replace PACKAGE MGTSPACE
IS
  -- Record qui permet de définir les bornes hautes/basse par tablespace.
  TYPE tMinMax IS RECORD
    minsize NUMBER(38),
    maxsize NUMBER(38)
  -- Tableau stockant les valeurs par indexation par nom de tablespace
  TYPE tTS_MinMax IS TABLE
    OF tMinMax
    INDEX BY VARCHAR2(30);
  -- Variable qui va stocker les diférentes valeurs de bornage
  vTS_MinMax tTS_MinMax;
  -- Type qui va stocker la liste des tablespaces à gérer
  TYPE tListeChaine IS TABLE
    OF VARCHAR2(30)
    INDEX BY BINARY_INTEGER;
  -- Variable qui stocke la liste des tablespaces à gérer 
  vListeTablespace tListeChaine;
  -- Procédure d'initialisation
  PROCEDURE INIT;
  -- Procédure de recherche des tables dans un tablespace spécifique
  PROCEDURE TS_SCAN(pTSname IN VARCHAR2);
  -- Procédure de recherche des tables dans l'ensemble des tablespaces configurés
  PROCEDURE TS_SCAN_ALL;
END;
create or replace PACKAGE BODY MGTSPACE
IS
  -- Procédure d'initialisation
  PROCEDURE INIT
  IS
  BEGIN
    vTS_MinMax('DATBIG').minsize := 1536;
    vTS_MinMax('DATBIG').maxsize := 1000000;
    vTS_MinMax('DAT').minsize    := 20;
    vTS_MinMax('DAT').maxsize    := 1536;
    vTS_MinMax('DATLOW').minsize := 0;
    vTS_MinMax('DATLOW').maxsize := 20;
    vTS_MinMax('IDXBIG').minsize := 1000000;
    vTS_MinMax('IDXBIG').maxsize := 512;
    vTS_MinMax('IDX').minsize    := 100;
    vTS_MinMax('IDX').maxsize    := 512;
    vTS_MinMax('IDXLOW').minsize := 0;
    vTS_MinMax('IDXLOW').maxsize := 100;
    vListeTablespace(1):='DATBIG';
    vListeTablespace(2):='DAT';
    vListeTablespace(3):='IDXBIG';
    vListeTablespace(4):='IDX';
    vListeTablespace(5):='IDXLOW';
    vListeTablespace(6):='DATLOW';
  END;
  -- Déplace une partition d'index
  PROCEDURE MOVE_INDEX_PARTITION(pOwner IN VARCHAR2, pName IN VARCHAR2, pDestination IN VARCHAR2, pPartName IN VARCHAR2)
  IS
  BEGIN
    DBMS_OUTPUT.PUT_LINE('ALTER INDEX ' || pOwner || '.' || pName || ' REBUILD PARTITION ' || pPartName || ' TABLESPACE ' || pDestination || ' ONLINE COMPUTE STATISTICS;');
  END;
  -- Procédure de déplacement d'un index
  PROCEDURE MOVE_INDEX(pOwner IN VARCHAR2, pName IN VARCHAR2, pDestination IN VARCHAR2 := NULL)
  IS
  BEGIN
    IF (pDestination IS NOT NULL) THEN
      DBMS_OUTPUT.PUT_LINE('ALTER INDEX ' || pOwner ||'.' || pName || ' REBUILD TABLESPACE ' || pDestination || ' NOLOGGING ONLINE STORAGE (INITIAL 128k) COMPUTE STATISTICS;');
    ELSE
      DBMS_OUTPUT.PUT_LINE('ALTER INDEX ' || pOwner ||'.' || pName || ' REBUILD NOLOGGING ONLINE COMPUTE STATISTICS;');
    END IF;
  END;
  -- Procédure de déplacement d'une table
  PROCEDURE MOVE_TABLE(pOwner IN VARCHAR2,pName IN VARCHAR2, pDestination IN VARCHAR2)
  IS
  BEGIN
    -- Génération du code de déplacement
    DBMS_OUTPUT.PUT_LINE('ALTER TABLE ' || pOwner || '.' || pName || ' MOVE TABLESPACE ' || pDestination || ' STORAGE(INITIAL 128k);');
    -- Reconstruction des indexes associés
    FOR vListeIndexes IN (SELECT OWNER, INDEX_NAME FROM DBA_INDEXES WHERE TABLE_NAME=pName AND OWNER=pOwner)
    LOOP
      MOVE_INDEX(vListeIndexes.OWNER, vListeIndexes.INDEX_NAME);
    END LOOP;
  END;
  -- Procédure qui propose le déplacement d'un objet
  PROCEDURE MOVE_OBJECT(pType IN VARCHAR2,pOwner IN VARCHAR2,pName IN VARCHAR2, pPartName IN VARCHAR2,pDestination IN VARCHAR2,pSize IN NUMBER)
  IS
  BEGIN
    DBMS_OUTPUT.PUT_LINE('--');
    DBMS_OUTPUT.PUT_LINE('-- Doit déplacer l''objet ' || pType || ' ' || pOwner || '.' || NVL(pPartname,pName) || (CASE WHEN pPartName IS NOT NULL THEN ' partition de ' || pName ELSE NULL END) || ' vers ' || pDestination || '. Taille: ' || pSize || 'MiB');
    IF (pType = 'TABLE') THEN
      MOVE_TABLE(pOwner, pName, pDestination);
    ELSIF (pType = 'INDEX') THEN
      MOVE_INDEX(pOwner, pName, pDestination);
    ELSIF (pType = 'INDEX PARTITION') THEN
      MOVE_INDEX_PARTITION(pOwner, pName, pDestination, pPartName);
    ELSE
      DBMS_OUTPUT.PUT_LINE('Type d''objet non géré. ' || pOwner || '.' || pName || ' est de type: ' || pType||'/'||pPartName);
    END IF;
    DBMS_OUTPUT.PUT_LINE('--');
    DBMS_OUTPUT.PUT_LINE('--');
  END;
  -- Procédure de recherche des tables dans un tablespace spécifique
  PROCEDURE TS_SCAN(pTSname IN VARCHAR2)
  IS
    CURSOR cObjList IS
      SELECT OWNER, SEGMENT_NAME, PARTITION_NAME, BYTES/1024/1024 ACT_SIZE, SEGMENT_TYPE
      FROM DBA_SEGMENTS
      WHERE TABLESPACE_NAME=pTSname
      AND   (BYTES/1024/1024 <  vTS_MinMax(pTSname).minsize OR BYTES/1024/1024 >= vTS_MinMax(pTSname).maxsize);
  BEGIN
    -- On traite le tablespace passé en paramètre
    DBMS_OUTPUT.PUT_LINE('------------------------------------------------------------');
    DBMS_OUTPUT.PUT_LINE('-- Traitement du tablespace ' || pTSname || '('||vTS_MinMax(pTSname).minsize||'/'||vTS_MinMax(pTSname).maxsize||')');
    DBMS_OUTPUT.PUT_LINE('------------------------------------------------------------');
    -- Et on recherche tous les objets concernés
    FOR vObjList IN cObjList
    LOOP
      -- Cet objet est mal placé, on cherche ou il doit être relocalisé
      FOR vTSidx IN vListeTablespace.FIRST .. vListeTablespace.LAST
      LOOP
        -- On vérifie l'existence de l'entrée: précaution :)
        IF vListeTablespace.EXISTS(vTSidx) THEN
          -- Si c'est la même catégorie
          IF ((SUBSTR(vListeTablespace(vTSidx),1,3) = SUBSTR(pTSname,1,3)) AND (vObjList.ACT_SIZE BETWEEN vTS_MinMax(vListeTablespace(vTSidx)).minsize AND vTS_MinMax(vListeTablespace(vTSidx)).maxsize))THEN
            MOVE_OBJECT(vObjList.SEGMENT_TYPE,vObjList.OWNER,vObjList.SEGMENT_NAME,vObjList.PARTITION_NAME,vListeTablespace(vTSidx),vObjList.ACT_SIZE);
          END IF;
        END IF;
      END LOOP;
    END LOOP;
    DBMS_OUTPUT.PUT_LINE('');
    DBMS_OUTPUT.PUT_LINE('------------------------------------------------------------');
  END;
  -- Procédure de recherche des tables dans l'ensemble des tablespaces configurés
  PROCEDURE TS_SCAN_ALL
  IS
  BEGIN
    FOR vTSidx IN vListeTablespace.FIRST .. vListeTablespace.LAST
    LOOP
      IF vListeTablespace.EXISTS(vTSidx) THEN
        TS_SCAN(vListeTablespace(vTSidx));
      END IF;
    END LOOP;
  END;
END;Comments are in French, but you can guess :-)
You'll have to modify PROCEDURE INIT in order to set up YOUR tablespace names. For example, you'll have to add an entry in the table for the SYSTEM tablespace!
This is called using:SET SERVEROUTPUT ON SIZE 200000
BEGIN
     MGTSPACE.INIT;
     MGTSPACE.TS_SCAN_ALL;
END;
/Modify it to suit your needs, but you shouldn't have much work to do. For example, PROCEDURE INIT, for you, will be like:PROCEDURE INIT
  IS
  BEGIN
    vTS_MinMax('DAT').minsize := 0;
    vTS_MinMax('DAT').maxsize := 10000000;
    vTS_MinMax('IDX').minsize := 0;
    vTS_MinMax('IDX').maxsize := 10000000;
    vTS_MinMax('SYSTEM').minsize := 0;
    vTS_MinMax('SYSTEM').maxsize := 0;
    vListeTablespace(1):='SYSTEM';
    vListeTablespace(2):='DAT';
    vListeTablespace(3):='IDX';
  END;Note : This will generate the code, not run it.
Note2: This code assumes that tables tablespace names start with DAT and that index tablespace names start with IDX.
Note3: I know separating tables and indexes is useless, just some personnal organisation choice :-)
Note4: To avoid that (and you have to, because SYSTEM does not match) , change the code:IF ((SUBSTR(vListeTablespace(vTSidx),1,3) = SUBSTR(pTSname,1,3)) AND (vObjList.ACT_SIZE BETWEEN vTS_MinMax(vListeTablespace(vTSidx)).minsize AND vTS_MinMax(vListeTablespace(vTSidx)).maxsize))THEN
     MOVE_OBJECT(vObjList.SEGMENT_TYPE,vObjList.OWNER,vObjList.SEGMENT_NAME,vObjList.PARTITION_NAME,vListeTablespace(vTSidx),vObjList.ACT_SIZE);
END IF;
to
IF ((vObjList.ACT_SIZE BETWEEN vTS_MinMax(vListeTablespace(vTSidx)).minsize AND vTS_MinMax(vListeTablespace(vTSidx)).maxsize))THEN
     MOVE_OBJECT(vObjList.SEGMENT_TYPE,vObjList.OWNER,vObjList.SEGMENT_NAME,vObjList.PARTITION_NAME,vListeTablespace(vTSidx),vObjList.ACT_SIZE);
END IF; in procedure TS_SCAN
Note5: well, I'll let you do the remaining :-)
Note6: This is not optimized code, nor guaranteed.
Note7: Nothing to see here, move along.
Regards,
Yoann.

Similar Messages

  • Relocating objects into new tablespace?

    I was looking for an easy way to relocate all objects from one table space to another table space? Is there a utility or any way to have all objects in one table space move to a new tablespace with out have to either move or rebuild each object one at a time.
    We have a tablespace that is 50 gig but is only 2% utilized so I am looking to shrink the overall db size by relocating the objects, and the dropping the 50 gig table space.
    I am trying to avoid extracting all of the ddl for all of the objects as well as the ddl to rebuild all of the indexes as there are over 200 objects that need relocating?
    Thanks.

    HI..
    To relocate the tables into another tablespace you can spool the output of below query and run it.
    select 'alter table '||owner||'.'||table_name||' move tablespace new_tbs_name parallel N;' from dba_tables where tablespace_name='XXX';
    Note:- N = cpu_count-1
    parallel --> to fasten the activity
    After its done,
    Rebuild the indexes of these tables:-
    select 'alter index '||owner||'.'||index_name||' rebuild parallel N;' from dba_indexes where table_name in (select table_name from dba_tables where tablespace_name='XXX');
    Then change the degree back:--
    select 'alter table '||owner||'.'||table_name||' parallel (degree 1);' from dba_tables where degree > 1;
    select 'alter index '||owner||'.'||index_name||' parallel (degree 1);' from dba_indexes where degree > 1;
    If on 10g
    select 'alter table '||owner||'.'||table_name||' parallel (degree 1);' from dba_tables where degree > '1';
    select 'alter index '||owner||'.'||index_name||' parallel (degree 1);' from dba_indexes where degree > '1';
    HTH
    Anand

  • Steps to Increase / adding New Table Space using BR TOOLS

    Hi
    Can Anyone Tell me the Step by Step Process for Increasing / Adding New Table Space using BRTOOLS.
    Any Demos/Blogs will be appreciated.
    Thanks in Advance.
    Rg
    Dan

    Hi Dan,
    <u><b>Adding a datafile using BRTOOLS</b></u>
    1) su – <b>ora<sid></b>
    2) start <b>brtools</b>
    3) Select option <b>2 -- Space management</b>
    4) Select option <b>1 -- Extend tablespace</b>
    5) Select option <b>3 --Tablespace name (specify tablespace name) and say continue(c- cont)</b>
    6) Select option <b>3 – New data file to be added and return</b>
    7) Select option <b>5 -- Size of the new file in MB (specify the size of the file) and say continue</b>
    regards,
    kanthi

  • Can't add new datafile into a table space?

    Hi, Oraclers,
    I am learning Oracle. I found one problem: I can't add new datafile to an existing
    table space. I tried to add via OEM and SQLPlus. None of them works.
    I can see that the datafile, say ras01.dbf, is in my hard drive. But I can't see
    it via OEM datafile.
    Also, this datafile creating procedure has never stopped. In SQLPlus, after I
    submitte ths statement, after 7 days, this sql statement is still running. The
    same thing happened in OEM.
    The sql statement is:
    ALTER TABLESPACE "RASBLK"
    ADD
    DATAFILE
    'H:\ORACLE\PRODUCT\10.1.0\ORADATA\NMDATA\RAKBLK35.DBF' SIZE
    26214400K REUSE AUTOEXTEND
    ON NEXT 2048M MAXSIZE 30720M
    Oracle is 10g V10.1.0.2.0
    os is Window Server 2003 Service Pack 1.
    What's the problem?
    Thanks,
    Message was edited by:
    shinington

    so you have definitely tried to use a Winlows Server with NTFS for a 1TB++ Database ?
    I never heard of that and I wouldn't even dare to dream of that, but as stated above theoretically (that is: according to MS) this should work.
    But surely your process has crossed some internal limitations, at least that is what it looks like.
    I guess you must go to your %ORACLE_BASE%\admin\%SID%\bdump or udump directories to eventually find a trace file there.
    recommendation is: move to some kind of bigger system (Solaris,AIX).

  • Join multiple output tables of BAPI into new table

    Hi,
    In my model (VC 7.0), I have a BAPI which outputs two different tables. Tables have many multiple records. Each table has several fields and a common field also. I want to combine these tables into one table form. I used the following methods and result are :
    1. I tried to connect output tables to one table form but no success. Because table form allows only one table input.
    2. I put a combine operator for output tables. No success. Although they're common field and multiple records but table form shows only one record? Where are the other record ?
    3. I put a union operator  for output tables. No success. Because union operator output only the common field. But I need the other fields from output tables in my table form.
    Will you please suggest what are the options available with me for joing output of both tables. I think combine operator should solve.
    Regards,
    Yi&#287;it

    Hi,
    use this link to get your answer:
    Join two Table output to new table
    Otherwise you can try with this:
    1. Drag signal out from the first table. Select all the fields which you want to be pass in the final table.Make the first table as multiple selection one.
    2. Create one button in toolbar for the first table and give some proper name in action property.
    3. mentioned the same action name in the link between the signal out and the first table.
    4. follow the same steps for the second table also.
    5. then from compose choose two signal ins and drag them on the story board. Then give the same name as you have given the signal outs name.
    6. Mention all the fields as you have mentioned in the siganl outs.
    7. Add a combine operator with both the signal ins and combine a table with the outport of the combine operator.
    Save and deploy. I hope it will help you.
    Here, you have to select the rows which you want to visualize in the final output table.
    Regards,
    Nutan
    regards,
    Nutan

  • Droping an object into a table

    I am trying to put a text field into a cell on a table. Everytime I do it puts it outside the table to the right. I have tried other objects and I have the same problem. Thanks in advance.

    No, I just imported it. The cells that had checkboxes are usable. But if there was nothing in a cell, I can't do anything with. If I drop a text field or a check box. It seems to big and puts the field out side of the table to the right. It appears to be in the same row but, it is outside the table. If I create a table form scratch, I still have problems dropping objects into the cells. I am not sure whats going on it seems like putting checkboxes and text fields into tables would be basic.

  • [CS4-CS5] Importing anchored objects into a table

    Hi,
    do you know if is it possible to import a table in ID through an XML file positioning an image (as an anchored object) within a cell?
    I'm currently importing a table but it looks to me like it's not possible to add images...
    I tried with this XML:
    <Container xmlns:aid="http://ns.adobe.com/AdobeInDesign/4.0/">
      <Table aid:trows="10" aid:tcols="5" aid:table="table">
        <Cell aid:table="cell" aid:theader="" aid:crows="1" aid:ccols="1">...</Cell>
        <Cell aid:table="cell" aid:theader="" aid:crows="1" aid:ccols="1"><Image href="file:///Users/Me/Desktop/Image.jpg"/></Cell>
      </Table>
    </Container>
    but it doesn't work at all.
    Also, if I export XML structure after inserting an image within a cell it doesn't appear in the exported XML.
    I doubt it's possible...
    Thanks anticipately!
    Lele

    Hi,
    To import PDFs you can refer following links
    http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/c01f54a2-99f1-2a10-5aa5-dcc50870e7f6
    http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/e057a910-3d4b-2b10-b490-cb569d694614
    Regards
    Nisha

  • Inserting millions of records into new table based on condition

    Hi All,
    We have a range partitioned table that contains 950,000,000 records (since from 2004) which is again list sub-partitioned on status. Possible values of stauts are 0,1,2,3 and 4.
    The requirement is to get all the rows with status 1 and date less than 24-Aug 2011. (Oracle 11g R2).
    I trying below code
    CREATE TABLE RECONCILIATION_TAB PARALLEL 3 NOLOGGING  
    AS SELECT /*+ INDEX(CARDS_TAB STATUS_IDX) */ ID,STATUS,DATE_D
    FROM CARDS_TAB
    WHERE DATE_D < TO_DATE('24-AUG-2011','DD-MON-YYYY')
    AND STATUS=1; CARDS_TAB has tow global indexes one on status and another on date_d.
    Above query is running for last 28Hrs! Is this the right approach?
    With Regards,
    Farooq Abdulla

    You said the table was range partitioned but you didn't say by what. I'm guessing the table is range partitioned by DATE_D. Is that a valid assumption?
    You said that the table was subpartitioned by status. If the table is subpartitioned by status, what do you mean that the data is randomly distributed? Surely it's confined to particular subpartitions, right?
    What is the query plan without the hint?
    What is the query plan with the hint?
    Why do you believe that adding the hint will be beneficial?
    Justin

  • Oracle APPS schema copy with all privileges to new schema and table space

    Hi all,
    Here is scenario:
    I have installed e-business suite in windows 2003 server for training environment using production (prod), single node and without vision (demo).
    i have to create a new table space in e:\oracle\prodmanz with similar content as in proddata and create a new schema called manz with same privileges as APPS.
    Kindly advice.
    Manish Kumar Chudasama
    email: [email protected] cc to [email protected]
    Thanks in advance guys.

    Hi Khalid,
    Ideally when you execute sql 'create schema <schema_name>' then the logged in user is going to default owner of the schema and you should see that under 'object privileges' of that user.
    The user will have 'create any' privileges which means the user has all the privileges on that schema.
    if you want to check who is owner of the schema in the system, please check 'SCHEMAS' under views in SYS.
    Regards,
    Venkat N.

  • One Transport request objects copy into new transport request

    Dear Experts,
    I created a transport request under which i saved my objects. <b>Now i need to  copy  old request objects into new request  or  split that transport request into number of new transport requests.</b>  First of all It is possible or not , if it is possible please tell  me the solution how to do.
    Regards,
    Krishna

    Hello Krishna
    You can
    (1) add object lists of already released requests ("old" requests) to you current request (still changeable)
    (2) merge changeable transport requests together
    (3) split a changeable request into several requests
    Whereas (1) and (2) are supported by standard functions of the SAP system (3) is a manual task involving the following steps:
    a.) Create a new request
    b.) Copy required transport entries (e.g.  R3TR TABL ZMYTABLE) from one request to the new request
    c.) Delete all copied transport entries from the object list of the "first" request
    However, if you are not fully aware of the dependencies between different transport object entries the splitting of object lists may cause hassle when you import the splitted requests into the next SAP system.
    Regards
      Uwe

  • How can I insert values from table object into a regular table

    I have a table named "ITEM", an object "T_ITEM_OBJ", a table object "ITEM_TBL" and a stored procedure as below.
    CREATE TABLE ITEM
    ITEMID VARCHAR2(10) NOT NULL,
    PRODUCTID VARCHAR2(10) NOT NULL,
    LISTPRICE NUMBER(10,2),
    UNITCOST NUMBER(10,2),
    SUPPLIER INTEGER,
    STATUS VARCHAR2(2),
    ATTR1 VARCHAR2(80),
    ATTR2 VARCHAR2(80),
    ATTR3 VARCHAR2(80),
    ATTR4 VARCHAR2(80),
    ATTR5 VARCHAR2(80)
    TYPE T_ITEM_OBJ AS OBJECT
    ITEMID VARCHAR2(10),
    PRODUCTID VARCHAR2(10),
    LISTPRICE NUMBER(10,2),
    UNITCOST NUMBER(10,2),
    SUPPLIER INTEGER,
    STATUS VARCHAR2(2),
    ATTR1 VARCHAR2(80),
    ATTR2 VARCHAR2(80),
    ATTR3 VARCHAR2(80),
    ATTR4 VARCHAR2(80),
    ATTR5 VARCHAR2(80)
    TYPE ITEM_TBL AS TABLE OF T_ITEM_OBJ;
    PROCEDURE InsertItemByObj(p_item_tbl IN ITEM_TBL, p_Count OUT PLS_INTEGER);
    When I pass values from my java code through JDBC to this store procedure, how can I insert values from the "p_item_tbl" table object into ITEM table?
    In the stored procedure, I wrote the code as below but it doesn't work at all even I can see values if I use something like p_item_tbl(1).itemid. How can I fix the problem?
    INSERT INTO ITEM
    ITEMID,
    PRODUCTID,
    LISTPRICE,
    UNITCOST,
    STATUS,
    SUPPLIER,
    ATTR1
    ) SELECT ITEMID, PRODUCTID, LISTPRICE,
    UNITCOST, STATUS, SUPPLIER, ATTR1
    FROM TABLE( CAST(p_item_tbl AS ITEM_TBL) ) it
    WHERE it.ITEMID != NULL;
    COMMIT;
    Also, how can I count the number of objects in the table object p_item_tbl? and how can I use whole-loop or for-loop to retrieve values from the table object?
    Thanks.

    Sigh. I answered this in your other How can I convert table object into table record format?.
    Please do not open multiple threads. It just confuses people and makes the trreads hard to follow. Also, please remember we are not Oracle employees, we are all volunteers here. We answer questions if we can, when we can. There is no SLA so please be patient.
    Thank you for your future co-operation.
    Cheers, APC

  • How to insert Serialised Object(XML DOM) into Oracle Table(as BLOB or CLOB)

    we need a urgent help. How can we insert and retrieve the XML Document DOM Object into Oracle Table.Actually we used BLOB for insert the DOM Object,its inserted finely but we have a problem in retrieving that object, we got error when v're retrieving. so could you anyone tell us what's this exact problem and how can we reslove this problem If anyone knows or used this kind operation, pls let us know immediately.
    Thanks in advance.

    Please repost your question in the appropriate XML forum, http://forums.oracle.com/forums/index.jsp?cat=51

  • Space in bytes used by a single index in given table space

    Hi All,
    How can i find a table space used by index in bytes
    Eg:
    suppose i have a table space USERS and i have a table say customer . one index defined on table customer called CUSTOMER_UQ and mapped to table to table space USERS . How can i find the bytes used by object CUSTOMER_UQ in table space USERS.
    Thanks

    The used space in Karthik's example is the number of bytes actually used by entries in the index, not the amount of space allocated to the index itself.
    To find out how much space in disk is allocated to the index you can use (as the owner of the index) something like:
    SELECT bytes FROM user_segments
    WHERE segment_name = <index name>You could also use all_segments or dba_segments if you have access as another user, but you would also need to specify the owner name.
    John

  • BRtools table space creation error

    hi,
    Iam trying to create new table space in my R/3 system. When i went to brtools - space management sytem throwing error owner failed.I tried with all users to login like ( <SID>adm,administrator etc ...)even then same problem.Could you please suggest how to create table space with what login id
    Error:
    Main options for creation of tablespace in database WA6
    1 - Tablespace name (tablespace) ......... [PSAPECDATA]
    2 - Tablespace contents (contents) ....... [data]
    3 - Segment space management (space) ..... [auto]
    4 - SAP owner of tablespace (owner) ...... [EC5ADM]
    5 - Data type in tablespace (data) ....... [both]
    6 # Joined index/table tablespace (join) . []
    Standard keys: c - cont, b - back, s - stop, r - refr, h - help
    BR0662I Enter your choice:
    c
    BR0280I BRSPACE time stamp: 2006-06-14 21.08.45
    BR0663I Your choice: 'c'
    BR0259I Program execution will be continued...
    BR0824E Owner EC5ADM not found in database or not SAP owner
    BR0691E Checking input value for 'owner' failed
    BR0669I Cannot continue due to previous warnings or errors - you can go back to
    repeat the last action
    BR0280I BRSPACE time stamp: 2006-06-14 21.08.45
    BR0671I Enter 'b[ack]' to go back, 's[top]' to abort:
    Please suggest.
    - Cheers

    Login as ora<sid> and run brtools. Tablespace owner will be SAP<SID> or SAPR3 depends upon your version.
    Thanks
    Prince

  • SQL1139n The total size of the table space is too big.

    Hi
    Our R3 QA system runs on Solaris 10, using DB6 822.
    We have now run into a problem, where we cannot extend a table. It is 66GB in size. Because the page file size is 8 kb, the limit is apparently 64 GB (we got it to 66GB).
    It seems we will have to increase the page file size to get past the problem, say 16k or 32k. The question is how?
    So far we have a framework in mind:
    Create new table
    Copy old table into new table
    Drop old table
    Recreate old table with bigger page file size
    Copy new table into old table (now this new /old is getting confusing..)
    Bob's you aunty, or something of that effect...
    Is the thinking correct? If it is I will need much more detail, as I am not too familiar with DB2.
    Thanks in advance!

    hi derik,
    the db6-specific limits for max tablespace/table size are
    64/128/256/512GB for 4/8/16/32KB pagesize.
    for problems like "tablespace/table reaches its pagesize dependent max. size",
    we (DB6 porting team of SAP) have developed a special tool/ABAP report called 'DB6CONV'.
    DB6CONV takes care of everything concerning a table conversion.
    it is in depth described in OSS note 362325. the report itself it delivered by means of a transport, which is attached to note 362325 and/or can be downloaded via sapmats.
    in your case you have to
    a) get the latest DB6CONV transport and import it into your system
    b) create a new tablespace with a pagesize >8k
    c) assign a new data class for this tbsp in tables TADB6 (for data tbsp) and/or IADB6 (for index/tbsp)
    d) run DB6CONV from transaction SE38 as described in note 362325
    to convert(transfer) the table that is at/near the size limit
    by specifying either target tablespaces or target data class
    e) DB6CONV will duplicate the table first into the new tablespace, then copy the data into the newly created table. this can be done either 'offline' (fastes way, but table is not accessible during the conversion) or 'online' (slow, but table is accessible the whole time - despite a short time period when the switch from original to target table is performed)
    please make yourself familiar with the tool and the documentation.
    and feel free to ask if you need more information or have additional questions/remarks.
    regards, frank

Maybe you are looking for