› Fóruns › Banco de dados Oracle › EXECUTE IMMEDIATE ‘ALTER SYSTEM….’ › EXECUTE IMMEDIATE ‘ALTER SYSTEM….’
Então jspaulonci,
a ideia do script é: Matar a sessão do user, e depois dropar o mesmo. Porém se eu coloco o DROP dentro do script, ele da erro de user conectado.
Fora do bloco PL, ele executa….
DECLARE
vSid NUMBER:=NULL;
vSerial NUMBER:=NULL;
CURSOR curDados IS
SELECT
SID
,SERIAL#
INTO vSid, vSerial
FROM V$SESSION
WHERE USERNAME = 'TESTEDROP';
BEGIN
OPEN curDados;
LOOP
FETCH curDados INTO vSid, vSerial;
EXIT WHEN curDados%NOTFOUND;
EXECUTE IMMEDIATE 'ALTER SYSTEM DISCONNECT SESSION'
||''''||vSid||','||vSerial||''''||' POST_TRANSACTION';
END LOOP;
CLOSE curDados;
BEGIN
EXECUTE IMMEDIATE 'DROP USER TESTEDROP CASCADE';
END;
END;
Erro: ORA-01940 – não é possivel eliminar um usuário conectado….