Oracle : 使用级联删除所有TR_uu用户 选择权 重新创建TR_u用户

Oracle : 使用级联删除所有TR_uu用户 选择权 重新创建TR_u用户,oracle,oracle10g,sample,sample-data,Oracle,Oracle10g,Sample,Sample Data,填充模式对象(OE (如图所示)作者: 主机imp“'sys/&&password\u sys AS SYSDBA's“file=oe_nodata.dmp log=tr_oe_imp.log fromuser=oe 图瑟 是否只需要创建模式对象但不填充数据的脚本的替代版本?你不能删除所有的INSERT语句吗?@Jeffrey nope。示例脚本sql从.dmp文件加载。(数据文件)。示例脚本中没有insert语句。问题在于创建TR_XXX架构。正如您所说,我必须从xxx.dmp文件加载我的TR

填充模式对象(OE
(如图所示)作者:

主机imp“'sys/&&password\u sys AS SYSDBA's“file=oe_nodata.dmp log=tr_oe_imp.log fromuser=oe 图瑟


是否只需要创建模式对象但不填充数据的脚本的替代版本?你不能删除所有的INSERT语句吗?@Jeffrey nope。示例脚本sql从.dmp文件加载。(数据文件)。示例脚本中没有insert语句。问题在于创建TR_XXX架构。正如您所说,我必须从xxx.dmp文件加载我的TR_xxx模式,然后删除其中的数据。删除数据是最困难的部分-某些模式具有循环引用,这需要我禁用外键约束,并在删除数据后启用它们。简而言之,这是一种非常痛苦的方法。ROWS=N选项将只创建Oracle对象(表、索引、视图等),而不插入任何数据。“创建空模式”,我的意思是只创建没有对象的Oracle用户/模式-即“创建由mypassword标识的用户tru OE”ROWS=N听起来很酷,我将对此进行一次尝试并发布,updateROWS=N不起作用:(-这与传输表空间有关吗?@APC我想我可以试一试。你知道有没有免费使用的公共数据集具有复杂的表结构(如物联网表、非物联网表、父表的子表深度、物联网引用非物联网和反之亦然等等)?
host imp "'sys/&&password_sys AS SYSDBA'" transport_tablespace=y file=&imp_file log=&imp_logfile datafiles='&datafile' tablespaces=EXAMPLE tts_owners=hr,oe,pm,ix,sh
host imp "'sys/&&password_sys AS SYSDBA'" rows=n transport_tablespace=y file=&imp_file log=&imp_logfile datafiles='&datafile' tablespaces=EXAMPLE tts_owners=hr,oe,pm,ix,sh
begin
    << dis_triggers >>
    for trgs in ( select owner, trigger_name 
                  from all_triggers 
                  where table_owner = '&&schema_name' )
    loop
        execute immediate 'alter trigger '||trgs.owner||'.'||trgs.trigger_name
                                ||' disable';
    end loop dis_triggers;

    << dis_fkeys >>
    for fkeys in ( select owner, table_name, constraint_name
                  from all_constraints 
                  where owner = '&&schema_name' 
                  and constraint_type = 'R')
    loop
        execute immediate 'alter table '||fkeys.owner||'.'||fkeys.table_name
                                ||' disable constraint '||fkeys.constraint_name;
    end loop dis_fkeys;

    << zap_tables >>
    for tabs in ( select owner, table_name
                  from all_tables 
                  where owner = '&&schema_name' )
    loop
        execute immediate 'truncate table '||tabs.owner||'.'||tabs.table_name
                                ||' reuse storage';
    end loop zap_tables;

    << en_fkeys >>
    for fkeys in ( select owner, table_name, constraint_name
                  from all_constraints 
                  where owner = '&&schema_name' 
                  and constraint_type = 'R')
    loop
        execute immediate 'alter table '||fkeys.owner||'.'||fkeys.table_name
                                ||' enable constraint '||fkeys.constraint_name;
    end loop en_fkeys;

    << en_triggers >>
    for trgs in ( select owner, trigger_name 
                  from all_triggers 
                  where table_owner = '&&schema_name' )
    loop
        execute immediate 'alter trigger '||trgs.owner||'.'||trgs.trigger_name
                                ||' enable';
    end loop en_triggers;

end;
/