34 lines
1.1 KiB
SQL
34 lines
1.1 KiB
SQL
|
|
-- =====================================================
|
||
|
|
-- Script: Recriação completa do schema PUBLIC
|
||
|
|
-- ATENÇÃO: Este script apaga TODOS os dados do banco!
|
||
|
|
-- =====================================================
|
||
|
|
--
|
||
|
|
-- INSTRUÇÕES DE USO:
|
||
|
|
-- 1. Se houver erro de "transação abortada", execute:
|
||
|
|
-- ROLLBACK;
|
||
|
|
-- 2. Depois execute este script completo
|
||
|
|
-- =====================================================
|
||
|
|
|
||
|
|
-- Visualiza quantas tabelas existem antes de apagar
|
||
|
|
SELECT
|
||
|
|
'ATENÇÃO: Existem ' || COUNT(*) || ' tabelas que serão apagadas!' AS aviso
|
||
|
|
FROM information_schema.tables
|
||
|
|
WHERE table_schema = 'public';
|
||
|
|
|
||
|
|
-- Apaga o schema public e TODOS os objetos dentro dele
|
||
|
|
-- (tabelas, views, funções, sequences, tipos, etc.)
|
||
|
|
DROP SCHEMA IF EXISTS public CASCADE;
|
||
|
|
|
||
|
|
-- Recria o schema public vazio
|
||
|
|
CREATE SCHEMA public;
|
||
|
|
|
||
|
|
-- Restaura as permissões padrão do PostgreSQL
|
||
|
|
GRANT ALL ON SCHEMA public TO postgres;
|
||
|
|
GRANT ALL ON SCHEMA public TO public;
|
||
|
|
|
||
|
|
-- Confirma que o schema foi recriado
|
||
|
|
SELECT
|
||
|
|
'Schema PUBLIC foi recriado com sucesso!' AS resultado,
|
||
|
|
COUNT(*) AS tabelas_restantes
|
||
|
|
FROM information_schema.tables
|
||
|
|
WHERE table_schema = 'public';
|