Banco de Dados

12
Administração de Bancos de Dados Aula 4 Modelo E-R Modelo Entidade Relacionamento Prof. Belarmino

Transcript of Banco de Dados

Page 1: Banco de Dados

Administração de Bancos de Dados

Aula 4

Modelo E-RModelo Entidade Relacionamento

Prof. Belarmino

Page 2: Banco de Dados

Modelos

• Os MODELOS são representações de objetos concretos ou abstratos do mundo real. • Para isso eles levam em consideração as propriedades ou características desses objetos

e as funções que eles realizam. Chamamos essas propriedades de ATRIBUTOS.• Modelos são simplificações ou representações parciais - não descrevem necessariamente

TODAS as características e comportamentos do objeto e sim apenas aqueles que forem

aplicáveis dentro de um certo CONTEXTO (ou escala) .• Chamamos de ABSTRAÇÂO ao método de separar os atributos de um objeto que são

pertinentes ao representá-lo em um dado contexto. Por ex toda pessoa tem nome, altura

e peso mas num Sistema de Conta Corrente apenas o primeiro é usado no objeto Pessoa. • Modelo tambèm pode ser entendido como um guia ou conceito a ser seguido • A palavra modelar por sua vez quer dizer ‘dar forma ou descrever’ alguma coisa.

Page 3: Banco de Dados

Modelagem em Bancos de Dados

• Os bancos de dados modernos permitem que os usuários tenham uma visão abstrata

dos dados construída a partir de modelos. Para isso eles isolam o usuário de detalhes

internos de como os dados são armazenados e gerenciados internamente. • Programadores e analistas constroem modelos lógicos dos dados sem se preocupar

com aspectos físicos.• Para construção destes modelos encontramos alguns padrões de modelagem que são

consagrados. Um dos mais conhecidos na área de desenvolvimento de aplicações é o

Modelo Entidade Relacionamento (MER).

Page 4: Banco de Dados

Modelo Entidade - Relacionamento

• Ele foi desenvolvido para facilitar o projeto da aplicação, permitindo criar um esquema

ou estrutura do negócio que possa ser implementada no banco de dados.• No modelo de entidade-relacionamento os objetos do mundo real são representados por

um conceito chamado ENTIDADE.• O banco de dados irá armazenar uma coleção dos objetos definidos pela ENTIDADE• Por exemplo, se definirmos uma ENTIDADE chamada “Conta Corrente” o SGBD poderá

guardar uma coleção de Contas Correntes. Cada item desta coleção é chamado as vezes

de “instancia” daquela entidade.

Page 5: Banco de Dados

Modelo Entidade - Relacionamento

• Toda ENTIDADE possui propriedades que são inerentes a ela e que a identificam no

modelo. Estas caracterisiticas são chamadas de ATRIBUTOS. • Os dados associados a cada atributo de uma entidade devem estar dentro de um

um conjunto de valores permitidos, chamado DOMÍNIO daquele atributo.• Por ex: um Cliente tem o atributo CPF que deve ser ocupado por um “número > 0”.• Em toda ENTIDADE deve haver um ou mais atributos que podem identificar únicamente

uma ocorrência da entidade na coleção. Eles são chamados “CHAVES CANDIDATAS”. • Chamamos de “CHAVE PRIMÁRIA” ao atributo eleito entre as chaves candidatas para

se tornar efetivamente o indicador único de cada ocorrencia da entidade.

* Na ilustração determine Domínios, Chaves Candidatas e uma Chave Primária.

Page 6: Banco de Dados

Modelo Entidade Relacionamento

• As entidades podem ter várias associações entre si. O conjunto dessas associações é

chamado RELACIONAMENTO. • Os relacionamentos também podem ter atributos ligados a eles.•A função de uma entidade dentro do relacionamento é chamada de PAPEL (ou ROLE)• Por exemplo as entidades FUNCIONARIO e DEPARTAMENTOS mantém uma certa

associação entre si pois todo Funcionário da empresa deve estar LOTADO em algum

Departamento – ou ainda “toda ocorrência de Funcionário se relaciona com alguma

das ocorrências de Departamento através da associação chamada Lotação”.

Page 7: Banco de Dados

Modelo Entidade Relacionamento

• O desenho da estrutura dentro do modelo E-R é normalmente feito usando o (D-ER)

Diagrama de Entidade-Relacionamento. Nele usamos a seguinte representação:

Retângulos: representam as entidades

Losangos: representam os relacionamentos →Elipses: representam os atributos

Linhas: ligam os atributos às entidades e estas aos relacionamentos

* Elabore um diagrama como o acima para as Entidades “Grupo do PIM” e “Alunos”

Page 8: Banco de Dados

Modelo Entidade Relacionamento

O modelo também introduz o conceito de ‘CARDINALIDADE’ definido como o número de entidades as quais outra entidade pode ser associada via um conjunto de relacionamentos:

Um para um (1:1): uma entidade de A está associada a apenas uma entidade de B, e uma entidade de B está associada a apenas uma entidade de A.

Um para muitos (1:N): uma entidade de A está associada a qualquer numero de entidades de B, e uma entidade de B esta associada somente a uma entidade de A.

Muitos para um (N:1): uma entidade de A está associada a apenas uma entidade de B, e uma única entidade de B pode estar associada a qualquer numero de entidades de A.

Muitos para muitos (N:M): uma entidade de A está associada a qualquer quantidade de entidades de B, e uma entidade de B associada a qualquer número de entidades de A.

* Elabore um diagrama como o acima para as Entidades “Grupo do PIM” e “Alunos”

Page 9: Banco de Dados

Modelo Entidade Relacionamento

O modelo D-ER introduz alem dos básicos outras representações como por exemplo:

Representação de Atributos Chaves, Multivalorados e Compostos Descrição de ENTIDADES “Fortes” e “Fracas”

Page 10: Banco de Dados

Modelo Entidade Relacionamento

O modelo D-ER implementa o conceito de especializaçâo e generalizaçâo que permite agrupar uma entidade superior e “entidades derivadas” que possuem similaridades.

Especialização apresenta um grau MAIOR de detalhes destacando as diferenças. Generalizaçâo mostra um grau MENOR de detalhes ressaltando as semelhanças. Use o conceito para um modelo que inclua graduandos, pos-graduandos e mestrandos.

Page 11: Banco de Dados

Modelo Entidade Relacionamento

A agregação, ou entidade associativa, é uma abstração na qual relacionamentos são

tratados como entidades de nível superior. No exemplo o relacionamento CONTATO

e as entidades CLIENTE e REPRESENTANTE são tratados como uma “entidade” de

nível superior chamada CONTATO por outra entidade chamada GERENCIA DE

MARKETING.

Page 12: Banco de Dados

HARDWARE

FIM