when i run
SQL>execute deactivate_user
I get errors:
SQL> exec deactivate_user
BEGIN deactivate_user; END;
*
ERROR at line 1: ORA-06550: line 1, column 7: PLS-00306: wrong number or types of arguments in call to 'DEACTIVATE_USER' ORA-06550: line 1, column 7: PL/SQL: Statement ignored
Here is my code:
create or replace procedure deactivate_user
(
p_username varchar2
)
as
l_username varchar2(30):=upper(p_username);
cnmd varchar2(50);
begin
for rec in (select privilege, admin_option from dba_sys_privs
where grantee =l_username) loop
cnmd := 'REVOKE '||rec.privilege||' from '||l_username;
execute immediate cnmd;
end loop;
end;
/