Conheço muitos profissionais de TI que brincan dizendo que TI não é uma ciência exata,,,,,concordo com eles, bom Niggaz, teoricamente se você fizer um shutdown e um startup não terá mais conexão desse usuário que você quer, como é um base de teste recomendo vc dar grant de DBA para esse usuário quando vc for cria-lo, assim você não fica sofrendo com grants e tudo mais, de-repente durante o dia vc deu um grant específico, aí a noite vc mata no outro dia vc precisa do grant e o usuário não tenha, apesar que vc pode gerenciar isso também não esquecendo de incrementar os grants no seu script de criação do usuário.
Se você for usar exp e imp clássico vc precisa entre alguma opções acima, caso vc estiver usando expdp e impdp aí não precisa, o imp reconhece que o usuário não existe e cria para você.
Hmmmm
jspaulonci, se eu dropar o usuário e fazer um expdp, ele cria o usuário sozinho? é isso??
então, no seu caso vc faria um expdp no RS , manda o arquivi para cá, e faz um imp aqui em SP
O impdp cria o owner para você sozinho.
tente o seguinte:
declare
p varchar2(100);
begin
p:=”;
begin
for i in (select sid,serial# from v$session where username=upper(p)) loop
execute immediate ‘alter system kill session ”’||i.sid||’,’||i.serial#||”’ immediate’;
end loop;
execute immediate ‘drop user ‘||p||’ cascade’;
exception
when others then
if sqlcode=-1918 then
dbms_output.put_line(‘Usuário não existe.’)
else
dbms_output.put_line(sqlerrm);
raise_application_error(-20001,’Erro encontrado => ‘||SQLCODE||’ : ‘||SQLERRM);
end if;
end;
execute immediate ‘create user ‘||p||’ identified by ‘||p||”;
exception
when others then
dbms_output.put_line(sqlerrm);
end;
/
Isso irá pesquisar se o usuário informado na variável “P” está conectado e fará um loop até que todas as sessões dele tenham sido desconectadas. Feito isso ele criará novamente o usuário com senha igual ao nome. Se o script funcionar, após rodá-lo é necessário que você dê as permissões necessárias a ele.