--
-- Finaliza outras conexoes ao banco de dados
--
select pg_terminate_backend(pg_stat_activity.pid)
from pg_stat_activity
where
    pg_stat_activity.pid <> pg_backend_pid();


--
-- para implantar o log: fc_log_tab(pg_tables.tablename, true)
--
-- para remover (nao gerar log): fc_log_tab(pg_tables.tablename, false)
--    com a remocao da geracao dos logs o banco pode ficar mais rapido
--
--
select fc_log_tab(pg_tables.tablename, true)
from pg_tables
where
    pg_tables.schemaname = 'public';


--
-- Instala os logs se ja estiver um log instalado
--
do $$ 
declare
    _trigger record;
    _table_list refcursor;
    _table record;
begin
    select * into _trigger
    from pg_trigger
    where
        tgname = 'tr_part_log';
    
    
    if (found) then
        open _table_list for
            select *
            from pg_tables
            where
                pg_tables.schemaname = 'public';
                
        fetch _table_list into _table;
        
        while (found) loop
            perform fc_log_tab(_table.tablename, true);
        
            fetch _table_list into _table;
        end loop;
    end if;
end $$;


--
-- LOG DE EXCLUSAO
--
select fc_log_exc_tab(pg_tables.tablename, true)
from pg_tables
where
    pg_tables.schemaname = 'public';