Relação supervisor-funcionário MySQL
20/09/2020
0
Olá boa tarde, estou criando um banco de dados na minha faculdade sobre uma empresa que tem funcionários, departamentos, supervisores, reuniões... etc.
Estou achando tranquilo porém estou com dificuldade na relação de supervisor. No caso 1 funcionário tem apenas 1 supervisor, mas 1 supervisor pode supervisionar vários funcionários. Há funcionários que não tem supervisores (gerentes, diretores, coordenadores). Estas são minhas tabelas:
O que eu estou fazendo é o seguinte, criei uma tabela Supervisor e nela precisa de referências da tabela Funcionario, pois nela está o cpf_funcionario, só que na tabela Funcionário também precisa da coluna cpf_supervisor, que é a referência do supervisor. Está certo isso? Como q faço esta relação? Estou quebrando a cabeça faz tempo... não sei se ficou claro.
Obrigado!!
Estou achando tranquilo porém estou com dificuldade na relação de supervisor. No caso 1 funcionário tem apenas 1 supervisor, mas 1 supervisor pode supervisionar vários funcionários. Há funcionários que não tem supervisores (gerentes, diretores, coordenadores). Estas são minhas tabelas:
CREATE TABLE tb_func ( cpf_func INT NOT NULL, nome_func varchar(45) NOT NULL, tel_func int null, endereco_func varchar(50) NULL, salario_func int not null, cargo_func varchar(35) NOT NULL, cpf_supervisor INT NULL, PRIMARY KEY (cpf_func) FOREIGN KEY (cpf_supervisor) references tb_supervisor (cpf_supervisor) ); CREATE TABLE tb_supervisor ( cpf_supervisor INT NOT NULL FOREIGN KEY (cpf_supervisor) references tb_func (cpf_supervisor) <------- TRAVEI AQUI )
O que eu estou fazendo é o seguinte, criei uma tabela Supervisor e nela precisa de referências da tabela Funcionario, pois nela está o cpf_funcionario, só que na tabela Funcionário também precisa da coluna cpf_supervisor, que é a referência do supervisor. Está certo isso? Como q faço esta relação? Estou quebrando a cabeça faz tempo... não sei se ficou claro.
Obrigado!!
Felipe Benedetto
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)