Oi, Ana! Tudo certo?
Peço desculpas pela demora a responder.
A fim de resolver este problema, podemos adicionar manualmente as chaves estrangeiras às suas respectivas tabelas. Para isso, teremos que acessar o MySQL Workbench e realizar os seguintes passos:
- Selecionar o seu banco de dados:
USE SUCOS_VENDAS;
- Adicionar as chaves estrangeiras
MATRICULA
(de TABELA_DE_VENDEDORES
) e CPF
(de TABELA_DE_DADOS
) à tabela NOTAS_FISCAIS
:ALTER TABLE NOTAS_FISCAIS
ADD CONSTRAINT notas_fiscais_ibfk_1
FOREIGN KEY (MATRICULA) REFERENCES TABELA_DE_VENDEDORES(MATRICULA);
ALTER TABLE NOTAS_FISCAIS
ADD CONSTRAINT notas_fiscais_ibfk_2
FOREIGN KEY (CPF) REFERENCES TABELA_DE_CLIENTES(CPF);
- Adicionar as chaves estrangeiras
CODIGO_DO_PRODUTO
(de TABELA_DE_PRODUTOS
) e NUMERO
(de NOTAS_FISCAIS
) à tabela ITENS_NOTAS_FISCAIS
:ALTER TABLE ITENS_NOTAS_FISCAIS
ADD CONSTRAINT itens_notas_fiscais_ibfk_1
FOREIGN KEY (CODIGO_DO_PRODUTO) REFERENCES TABELA_DE_PRODUTOS (CODIGO_DO_PRODUTO);
ALTER TABLE ITENS_NOTAS_FISCAIS
ADD CONSTRAINT itens_notas_fiscais_ibfk_2
FOREIGN KEY (NUMERO) REFERENCES NOTAS_FISCAIS (NUMERO);
De maneira geral, em todos os códigos acima estamos realizando as seguintes atividades:
- Alterar uma tabela específica através da cláusula
ALTER TABLE
e do seu respectivo nome; - Usar
ADD CONSTRAINT
para indicar que haverá uma restrição de chave estrangeira; - Adicionar um nome genérico para tal restrição, a fim de identificá-la;
- Usar
FOREIGN KEY
e o nome da chave estrangeira para defini-la; - Utilizar
REFERENCES
para indicar a qual tabela e a qual campo a nossa chave estrangeira faz referência.
Ana, espero ter ajudado. Caso o problema persista ou surjam novas dúvidas, fico à disposição.
Abraços!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!