1
resposta

[Projeto] 09 Faça como eu fiz: trabalhando com funções e Trigger (RESOLVIDO)

CREATE TABLE logs_clientes (
aluguel_id VARCHAR(255),
cliente_id VARCHAR(255),
data_insercao TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (aluguel_id, cliente_id),
FOREIGN KEY (aluguel_id) REFERENCES alugueis(aluguel_id),
FOREIGN KEY (cliente_id) REFERENCES clientes(cliente_id)
);

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta

Oi, Matheus! Como vai?

Agradeço por compartilhar seu código com a comunidade Alura.

Uma dica interessante para o futuro é usar ON DELETE CASCADE nas FOREIGN KEYS caso queira que a exclusão de um registro em alugueis ou clientes remova automaticamente os logs relacionados:


CREATE TABLE logs_clientes (
    aluguel_id VARCHAR(255),
    cliente_id VARCHAR(255),
    data_insercao TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    PRIMARY KEY (aluguel_id, cliente_id),
    FOREIGN KEY (aluguel_id) REFERENCES alugueis(aluguel_id) ON DELETE CASCADE,
    FOREIGN KEY (cliente_id) REFERENCES clientes(cliente_id) ON DELETE CASCADE
);

O codigo acima faz com que, ao deletar um aluguel ou cliente, os registros de log associados sejam apagados automaticamente, evitando dados órfãos.

Qualquer dúvida que surgir, compartilhe no fórum. Abraços e bons estudos!

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!