-- Garante que a tabela configuracoes existe e tem a estrutura correta -- Se a tabela já existe, vamos garantir que ela tenha a estrutura correta DO $$ BEGIN -- Criar tabela se não existir IF NOT EXISTS (SELECT FROM pg_tables WHERE schemaname = 'public' AND tablename = 'configuracoes') THEN CREATE TABLE public.configuracoes ( id uuid DEFAULT gen_random_uuid() NOT NULL PRIMARY KEY, tipo character varying NOT NULL, valor jsonb, created_at timestamp with time zone DEFAULT now() NOT NULL, updated_at timestamp with time zone DEFAULT now() NOT NULL ); END IF; -- Garantir que a constraint UNIQUE existe IF NOT EXISTS ( SELECT 1 FROM pg_constraint WHERE conname = 'configuracoes_tipo_key' AND conrelid = 'public.configuracoes'::regclass ) THEN ALTER TABLE public.configuracoes ADD CONSTRAINT configuracoes_tipo_key UNIQUE (tipo); END IF; END $$; -- Adiciona índice no campo tipo para melhor performance (se não existir) CREATE INDEX IF NOT EXISTS idx_configuracoes_tipo ON public.configuracoes(tipo); -- Adiciona comentários COMMENT ON TABLE public.configuracoes IS 'Armazena todas as configurações do sistema'; COMMENT ON COLUMN public.configuracoes.tipo IS 'Tipo da configuração (chave única)'; COMMENT ON COLUMN public.configuracoes.valor IS 'Valor da configuração em formato JSON';