Boa noite, pessoal
Estou concluindo o curso e fiquei curioso no uso do cascade. Como é a sintaxe? E ao usar o cascade não preciso excluir de um em um?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Boa noite, pessoal
Estou concluindo o curso e fiquei curioso no uso do cascade. Como é a sintaxe? E ao usar o cascade não preciso excluir de um em um?
Ooi, Fabio! Tudo bem?
O CASCADE facilita bastante a vida na hora de lidar com exclusões em tabelas relacionadas, sua sintaxe é simples e você só vai precisar adicioná-la na definição da chave estrangeira.
Por exemplo, imagine que você tem uma tabela Clientes e uma tabela Pedidos, com uma chave estrangeira cliente_id na tabela Pedidos referenciando a chave primária da tabela Clientes. Para usar o CASCADE na exclusão, você adicionaria a cláusula ON DELETE CASCADE na definição da chave estrangeira:
ALTER TABLE Pedidos
ADD CONSTRAINT fk_cliente_id FOREIGN KEY (cliente_id) REFERENCES Clientes(id) ON DELETE CASCADE;
→ Com essa configuração, você não precisa excluir os pedidos um a um, ao excluir um cliente da tabela Clientes, todos os pedidos relacionados a esse cliente na tabela Pedidos serão excluídos automaticamente! Por isso, é sempre importante utilizar o CASCADE com cuidado e sempre ter um backup dos seus dados antes de realizar exclusões em massa.
Espero ter ajudado!
Abraço ✨