MINI MINI MANI MO

Path : /opt/oracle/product/18c/dbhomeXE/R/migration/oreuser/imp/
File Upload :
Current File : //opt/oracle/product/18c/dbhomeXE/R/migration/oreuser/imp/rqdatastoremig.sql

Rem
Rem $Header: oracler/migration/oreuser/imp/rqdatastoremig.sql /main/4 2016/10/21 11:02:24 qinwan Exp $
Rem
Rem rqdatastoremig.sql
Rem
Rem Copyright (c) 2013, 2016, Oracle and/or its affiliates. 
Rem All rights reserved.
Rem
Rem    NAME
Rem      rqdatastoremig.sql - <one-line expansion of the name>
Rem
Rem    DESCRIPTION
Rem      <short description of component this file declares/defines>
Rem
Rem    NOTES
Rem      Argument: name of the schema that was migrated
Rem
Rem    MODIFIED   (MM/DD/YY)
Rem    qinwan      10/13/16 - add column ver
Rem    qinwan      08/30/15 - add tabname column
Rem    qinwan      06/17/15 - handle refdbobject table
Rem    gayyappa    12/11/13 - Created
Rem
Rem    BEGIN SQL_FILE_METADATA 
Rem    SQL_SOURCE_FILE: oracler/migration/oreuser/imp/rqdatastoremig.sql 
Rem    SQL_SHIPPED_FILE: 
Rem    SQL_PHASE: 
Rem    SQL_STARTUP_MODE: NORMAL 
Rem    SQL_IGNORABLE_ERRORS: NONE 
Rem    SQL_CALLING_FILE: 
Rem    END SQL_FILE_METADATA

SET ECHO ON
SET FEEDBACK 1
SET NUMWIDTH 10
SET LINESIZE 80
SET TRIMSPOOL ON
SET TAB OFF
SET PAGESIZE 100

set autocommit off
whenever sqlerror exit rollback;

insert into rqsys.rq$datastore(dsid, dsowner, dsname, cdate, description, 
                               tabname)
select newdsid, dsowner, dsname, cdate, description, tabname
from system.tmprqdsstg;

insert into rqsys.rq$datastoreobject(objid, dsid, objname, class, objsize, length, nrow, ncol, ver)
select newobjid, newdsid, objname, class, objsize, length, nrow, ncol, ver
from system.tmprqdsobjstg;

insert into rqsys.rq$refdbobject(refobjid, refobjname, refobjtype, refobjparm, refobjowner)
select newrefobjid, refobjname, refobjtype, refobjparm, refobjowner
from system.tmprqrefdbobjstg ;

insert into rqsys.rq$datastorerefdbobject(objid, refobjid)
select newobjid, newrefobjid
from system.tmprqdsrefstg ;

insert into rqsys.rq$datastoreaccess(dsid, grantee)
select newdsid, grantee
from system.tmprqdsaccessstg ;

update &&1..rq$datastoreinventory s
set s.objid= (select newobjid from system.tmprqdsobjstg t where t.objid = s.objid) ;

-- grantable datastore
Declare
  CURSOR cur IS  
    select tabname from rqsys.rq$datastore 
    where dsowner = '&&1' and tabname IS NOT NULL;
Begin
  FOR c IN cur LOOP
    EXECUTE IMMEDIATE 'update ' || '&&1' || '.' || c.tabname || ' s ' ||
      'set s.objid= (select newobjid from system.tmprqdsobjstg t ' ||
       'where t.objid = s.objid)';
  END LOOP;
End;
/
commit; 

OHA YOOOO