-- Corrige a foreign key de document_contracts para permitir exclusão de modelos
-- Altera de ON DELETE RESTRICT para ON DELETE SET NULL
-- Isso permite excluir modelos mesmo que existam contratos gerados (template_id fica NULL)
-- Execute este script no banco de dados

-- PASSO 1: Primeiro, alterar a coluna template_id para permitir NULL
-- (Necessário para ON DELETE SET NULL funcionar)
ALTER TABLE document_contracts 
MODIFY COLUMN template_id INT NULL COMMENT 'ID do modelo usado';

-- PASSO 2: Remover a constraint antiga
-- Se der erro, descubra o nome exato executando: SHOW CREATE TABLE document_contracts;
ALTER TABLE document_contracts 
DROP FOREIGN KEY document_contracts_ibfk_1;

-- PASSO 3: Adicionar nova constraint com ON DELETE SET NULL
ALTER TABLE document_contracts 
ADD CONSTRAINT document_contracts_ibfk_1 
FOREIGN KEY (template_id) REFERENCES document_templates(id) ON DELETE SET NULL;

-- Verifica a alteração
DESCRIBE document_contracts;
