Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Entidades fortes vs fracas MYSQL


Como você sabe, Entidade Fraca é uma tabela que não possui uma chave primária mas a chave primária de um conjunto de entidades fraco é formada pela chave primária do conjunto de entidades forte no qual o conjunto de entidades fraco é dependente da existência, mais o discriminador do conjunto de entidades fraco.



A relação entre entidade fraca e conjunto de entidades forte é chamada de Relação Identificadora. No exemplo mencionado na imagem acima, o pagamento do empréstimo é a relação de identificação para a entidade de pagamento. Um conjunto de entidades fraco é representado por uma caixa duplamente contornada e a relação de identificação correspondente por um losango duplamente contornado como mostrado na figura. Aqui, as linhas duplas indicam a participação total da entidade fraca no conjunto da entidade forte, o que significa que cada pagamento deve ser relacionado via pagamento de empréstimo a alguma conta. A seta de empréstimo-pagamento para empréstimo indica que cada pagamento é para um único empréstimo. O discriminador de um conjunto de entidades fraco é sublinhado com linhas tracejadas em vez de linhas sólidas.

Consideremos outro cenário, onde queremos armazenar as informações dos funcionários e seus dependentes. Cada funcionário pode ter de zero a n número de dependentes. Cada dependente tem um número de identificação e um nome.

Agora vamos considerar a seguinte base de dados:

Há três funcionários com E# como 1, 2 e 3, respectivamente.

Agora, no caso de ID de entidade dependente não pode atuar como chave primária porque não é único.

Assim, Dependent é um conjunto de entidades fraco tendo id como discriminador. Tem total participação com a relação “tem” porque nenhum dependente pode existir sem os empregados (a empresa se preocupa com os empregados).

Existem duas tabelas que precisam ser criadas acima do diagrama e-r. Estes são Employee com E# como coluna única que atua como chave primária. A outra tabela será de Dependente tendo as colunas E#, id e name onde a chave primária é a combinação de (E# e id).