Oracle : 使用级联删除所有TR_uu用户 选择权 重新创建TR_u用户
填充模式对象(OEOracle : 使用级联删除所有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
(如图所示)作者: 主机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;
/