1
resposta

Chave Estrangeira

Bom dia!

Gentileza me explicar esse bloco de códigos:


ALTER TABLE VENDEDORES ADD CONSTRAINT CE_VENDEDORES_VENDAS
FOREIGN KEY (ID_VENDEDOR)
REFERENCES VENDAS (ID_VENDEDOR)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

OBS: A alteração não seria feita na tabela de vendas para criar a chave estrangeira?

1 resposta

Oi, Renata! Tudo certo por aí?

Desde já, peço desculpas pela demora em retornar.

O código SQL que você compartilhou adiciona uma chave estrangeira à tabela VENDEDORES, ação enfatizada na primeira linha com ALTER TABLE VENDEDORES. A chave estrangeira é definida através da instrução ADD CONSTRAINT, que recebe um nome e a definição da chave estrangeira.

O nome da chave estrangeira, neste caso, é CE_VENDEDORES_VENDAS. A definição da chave estrangeira começa com a cláusula FOREIGN KEY, seguida pela coluna que será a chave estrangeira (ID_VENDEDOR) e pela instrução REFERENCES, que indica a tabela mãe (VENDAS) e a coluna correspondente (ID_VENDEDOR) que a chave estrangeira está referenciando.

Por fim, ao usar ON DELETE NO ACTION e ON UPDATE NO ACTION, indica-se que, quando tentarmos realizar uma exclusão ou atualização na tabela VENDAS de dados relacionados com a tabela VENDEDORES, o processo será interrompido e uma mensagem de erro aparecerá.

Nesse sentido, a alteração para criação de uma chave estrangeira não será feita na tabela VENDAS, mas sim na tabela VENDEDORES, haja vista que VENDAS apenas serve de base para a adicionarmos uma chave estrangeira em VENDEDORES.

Renata, espero ter ajudado com a explicação, estarei aqui para conversamos caso surja alguma dúvida!

Um forte abraço.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!