PRIMARY KEY E FOREIGN KEY - UPDATE

SQL Server

SQL

SQL

Oracle

Banco de Dados

14/03/2017

Olá, estou com o seguinte problema:

Imagine duas tabelas que se relacionam, exemplo, tabela filme e tabela tipo_filme.

Na tabela tipo filme eu tenho uma primary key chamada id_tipo já que este campo se relaciona com minha tabela filme ele se torna uma foreign key na minha tabela filme.

Agora imagine que na tabela tipo_filme eu tenho o seguinte valor: id_tipo = 1, consequentemente na minha tabela filme eu terei varios valores 1.

O problema é que eu preciso mudar esse valor de 1 para 2 e preciso que ele também altere isso na minha tabela filme.
Zack Ramos

Zack Ramos

Curtidas 0

Melhor post

Luis Mesa

Luis Mesa

15/03/2017

Opa, Zack, tudo tranquilo por aí?

Então, para isso existe o ON UPDATE CASCADE. Se a sua Chave Primária da tabela "tipo_filme" for auto-incremento, não teria sentido alterar a chave, mas se fosse algo como um "código de barras", então você poderia, ao definir a Chave estrangeira na tabela "filme", especificar ON UPDATE CASCADE. Assim, quando a chave primária da tabela "tipo_filme" mudar, todas as tabelas que contenham id_tipo como chave estrangeira e especificado o ON UPDATE CASCADE terão sua chave estrangeira atualizada!

Da mesma forma você pode especificar ON DELETE CASCADE, para quando o registro associado a uma chave estrangeira específica for apagado, os registros da tabela também sejam removidos.

Um abraço.
GOSTEI 1

Mais Respostas

Zack Ramos

Zack Ramos

14/03/2017

Fala Luis,

Você acabou de salvar meu dia!

Muito obrigado...

Abraço
GOSTEI 0
Luis Mesa

Luis Mesa

14/03/2017

De nada, disponha!

Abraço
GOSTEI 0
POSTAR