SQL - Não da erro Primary Key

2 respostas Resolvido
M

Oi, primeira desculpem pelo nome do tópico (não consegui pensar em um melhor). Bom estou com um banco de dados aqui que tem duas tabelas ‘carros’ e ‘compradores’. essas duas tabelas tem uma relação por meio de uma foreign key chamada ‘carro_comprar’ que esta na tabela ‘compradores’. o que esta acontecendo é que quando coloco esse comando: 'update compradores set carro_comprar = 'PAX9182' where cpf = '1';’ era pra dar um erro por que esse ‘cpf’ não existe, mas não da erro e também não acontece nenhuma modificação, mas se eu mudar o ‘carro_comprar’ para uma placa que não existe como o esperado retorna um erro.
Se alguém por favor souber me explicar o que aconteceu, agradeço desde já.

cpf -> PK
carro_comprar -> MUL

DADOS DA TABELA COMPRADORES
dados%20da%20tabela%20compradores

DADOS DA TABELA CARROS
dados%20da%20tabela%20carros

ONDE ERA PRA DAR O ERRO

2 Respostas

J

PK não é pra isso. Pra dar erro esse CPF deveria ser uma FK (foreign key) para uma tabela de CPF.

J
Solucao aceita

Erro de Chave é uma coisa, já “Where” se não satisfaz a condição não tem que exibir erro pois é uma condicional para a atualização.
No entanto dependendo do banco de dados voce pode usar um comando “Trigger before update …” e verificar se satisfaz ou não a condição e ter algum controle sobre isso.

Criado 12 de março de 2020
Ultima resposta 12 de mar. de 2020
Respostas 2
Participantes 3