Boa tarde pessoal. Eu criei uma tabela cep que contém um campo cep com valores 1, 2, 3 ... e este campo está vinculado a uma chave estrangeira de mesmo nome (cep) numa outra tabela denominada contatos. Percebi que esses valores numéricos estão errados e estou querendo mudá-los para ceps fictícios como, por exemplo, 23819000 só que não estou conseguindo fazer isso! a constraint foreign key me impede de efetuar esta operação.
mysql> UPDATE cep
-> SET cep = 23816000
-> WHERE cidade = 'Algum lugar';
ERROR 1451 (23000): Cannot delete or update a parent row: a foreign key constraint fails (`esquema_contatos`.`
contatos`, CONSTRAINT `contatos_ibfk_2` FOREIGN KEY (`cep`) REFERENCES `cep` (`cep`))
mysql> UPDATE contatos
-> SET cep = 23816000
-> WHERE primeiro_nome = 'Fulana';
ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint fails (`esquema_contatos`.`cont
atos`, CONSTRAINT `contatos_ibfk_2` FOREIGN KEY (`cep`) REFERENCES `cep` (`cep`))
como poso fazer para modificar os campos cep da tabela cep e contatos sem precisar apagar as tabelas? Obs.: eu não adicionei nenhuma CONSTRAINT explícita da forma CONSTRAINT contatos_fk. Obrigado pela ajuda!
Existe alguma forma de atualizar simultaneamente uma chave estrangeira e uma primária com um novo registro ?
Pergunta
PhoenixWings
Boa tarde pessoal. Eu criei uma tabela cep que contém um campo cep com valores 1, 2, 3 ... e este campo está vinculado a uma chave estrangeira de mesmo nome (cep) numa outra tabela denominada contatos. Percebi que esses valores numéricos estão errados e estou querendo mudá-los para ceps fictícios como, por exemplo, 23819000 só que não estou conseguindo fazer isso! a constraint foreign key me impede de efetuar esta operação.
como poso fazer para modificar os campos cep da tabela cep e contatos sem precisar apagar as tabelas? Obs.: eu não adicionei nenhuma CONSTRAINT explícita da forma CONSTRAINT contatos_fk. Obrigado pela ajuda!
Existe alguma forma de atualizar simultaneamente uma chave estrangeira e uma primária com um novo registro ?
Editado por Denis CourcyLink para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados