Apagar registros de uma tabela com dados de outra tabela

15/09/2021

8

Boa tarde a todos! Preciso apagar os registros de uma tabela que faz referencia a outra tabela que contém uma chave estrangeira. Quando tento apagar
os registro não permite. Exemplo:

TABELA 1 - CAMPOS:

ID - CHAVE PRIMÁRIA
ID_MAC 0 - CHAVE ESTRANGEIRA

TABELA 2 - CAMPOS:

ID - CHAVE PRIMARIA (ESSE CAMPO ESTÁ RELACIONADO COM O CMAPO ID_MAC DA TABELA 1)
ID_CLI - CHAVE ESTRANGEIRA - CONTÉM O CÓDIGO DO CLIENTE. EXEMPLO 64

O que preciso é deletar todos os registros da TABELA 2 usando como condição o código do cliente (EX. 64)

DELETE FROM TABELA2 WHERE ID_CLI=64

Ao tentar recebo a mensagem de erro por conta do relacionamento.

Aí tentei esse scrip abaixo:

DELETE FROM TABELA1 WHERE ID_MAC IN (SELEC * FROM TABELA2 WHERE ID_CLI=64)

Agradeço desde já a atenção!
Responder

Posts

qual o banco de dados?
como foi criado o relacionamento?
qual a mensagem de erro?
Responder

18/09/2021

Paulo Felipe

A tabela 2 depende do registro da tabela 1. Não tem como apagar da tabela 1 sem apagar da tabela 2. Sendo assim, você precisa apagar da tabela 2 para depois excluir da tabela 1.
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários. Para saber mais sobre o uso de cookies,
consulte nossa política de privacidade. Ao continuar navegando em nosso site, você concorda com a nossa política.

Aceitar