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?
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 ✨