Baixe o app para aproveitar ainda mais
Prévia do material em texto
Banco de Dados - Modelagem Prof. Erick Jeronimo Modelos de Dados • Um modelo de dados é um conjunto de conceitos lógicos (objetos, suas propriedades e o inter-relacionamento entre eles) compreensíveis aos usuários finais do sistema e usados para descrever a estrutura de uma base de dados. Por estrutura de uma base de dados entenda-se os tipos de dados, relacionamentos e restrições associadas aos dados. • Os modelos de dados podem ser classificados em: – Conceitual: provê conceitos muito próximos àqueles percebidos pelos usuários finais do sistema. Esses modelos utilizam conceitos de entidades, atributos e relacionamentos. Uma entidade representa objetos ou conceitos do mundo real (exemplos: empregados, departamentos). Um atributo representa alguma propriedade de interesse relacionada a uma entidade (nome e salário dos empregados, por exemplo). Um relacionamento entre duas (ou mais entidades) representa uma interação entre entidades (relacionamento entre empregado e departamentos, por exemplo). Modelos de Dados – Lógico: provê conceitos que podem ser entendidos pelos usuários finais do sistema e que estão próximos da forma como os dados são fisicamente armazenados. – Físicos: provê conceitos que descrevem os detalhes de como os dados encontram-se armazenados no computador. Representam informações como formato dos registros, ordenação dos registros e caminhos de acesso. Modelo Conceitual Modelo Lógico Modelo Físico Modelos de Dados • A descrição de uma base de dados é chamada de esquema ou estrutura de uma base de dados. Esse esquema é especificado durante o projeto da base de dados e não costuma sofrer mudanças freqüentes. Muitos modelos de dados têm certas convenções para, diagramaticamente, mostrar esquemas especificados no modelo. • Os dados em uma base de dados, esses sim costumam mudar freqüentemente. Os dados armazenados em um banco em um determinado instante é chamado de estado ou instância da base de dados. Modelos de Dados Modelo Entidade – Relacionamento (MER) Entidades Fortes e Entidades Fracas • A entidade que possui uma chave primária é uma entidade dita forte. Já em oposição uma entidade que não possui uma chave primária é denominada fraca. • Entidades Fracas não existem desacompanhadas de Entidades Fortes. Veja da seguinte forma, a entidade dependentes não pode existir num sistema de uma empresa, sem a existência da entidade funcionário. Entidades fracas • Mais um exemplo de entidade fraca, agora num sistema bancário... Entidade transação com os atributos: – Núm. da transação; – Data da transação; – Valor da transação. • Cada entidade transação é distinta das demais, no entanto duas (ou mais) transações de contas distintas podem ter o mesmo número de transação, datas e de valores iguais, logo não há chave primaria. Existe dependência da entidade conta. Entidades fracas • Uma entidade fraca não possuindo uma chave primária, possuí no entanto uma chave parcial. • A chave parcial permite discriminar as entidades no conjuntos da entidades fracas. • A chave primária de uma entidade fraca é formada pela uniao de sua chave parcial com a chave primaria da entidade da qual sua existência depende. Atributo • Atributo: Elemento de dado que contém informação que descreve uma entidade. Um atributo também pode ser chamado como coluna, ou seja, trata-se de elemento que compõem uma tabela(entidade). Atributo • Atributo Mono valorizado: assume um único valor para cada elemento do conjunto-entidade. – Ex.: Nome • Atributo Composto: formado por um ou mais sub-atributos – Ex.: Endereço Atributo Atributo Multivalorado: uma única entidade tem diversos valores para este atributo (seu nome é sempre representado no plural) Ex.: Dependentes Atributo Determinante: identifica cada entidade de um conjunto- entidade (também conhecido com atributo chave) Ex.: Cod_Func Domínio de um Atributo: conjunto de valores permitidos para o atributo Ex.: Sexo {M, F} Relacionamentos Relacionamento: estrutura que indica a associação de elementos de duas ou mais entidades. Relacionamentos Atributo de Relacionamento: depende de todos os conjuntos-entidade associados entre si. Exemplo: Cardinalidade Conhecida como uma propriedade importante de um relacionamento entre entidades. Sua funcionalidade é informar quantas ocorrências de uma entidade pode estar associada a uma determinada ocorrência através do relacionamento. Existem dois tipos de cardinalidade: Máxima e Mínima. Cardinalidade Máxima • Este tipo de cardinalidade indica um nível de relacionamento entre duas ou mais entidade existente em um modelo de banco de dados. Sendo utilizada graficamente para representar as possibilidades de ocorrências, sendo elas: – a cardinalidade máxima representa através do número (1) e – a cardinalidade máxima ilimitada, usualmente chamada de cardinalidade máxima “muitos” e referência pela letra n. Cardinalidade Representação Binária Representada através de um relacionamento binário existente entre duas ocorrências de entidade. Podemos classificar os relacionamento binarios da seguinte maneira: n:n (muitos para muitos); 1:n (Um para muitos); 1:1 (Um para Um). Restrições de Mapeamento (cardinalidade) Um-para-um: uma entidade em A está associada no máximo a uma entidade em B e uma entidade em B está associada no máximo a uma entidade em A. Restrições de Mapeamento (cardinalidade) Um-para-muitos: uma entidade em A está associada a qualquer número de entidades em B, enquanto uma entidade em B está associada no máximo a uma entidade em A. Restrições de Mapeamento (cardinalidade) Muitos-para-muitos: Uma entidade em A está associada a qualquer número de entidades em B, e uma entidade em B está associada a qualquer número de entidades em A. Elementos importantes • Chave: é um conjunto de um ou mais atributos que, tomados coletivamente, permite-nos identificar unicamente uma entidade no conjunto-entidade. • Integridade de Entidade: Nenhum atributo que participe da chave de um conjunto-entidade deve aceitar valores nulos. • Aspectos Relevantes: A questão fundamental do projeto de chaves é reduzir ao máximo os efeitos de redundância. • A alteração dos valores de campos constituintes da chave primária ou a remoção de uma entidade de um conjunto entidade pode ocasionar problemas de integridade referencial. Representação Gráfica Chaves no Modelo MER Cardinalidade Mínima • Representa outra forma de informação existente no modelo entidade relacionamento, expressando o número mínimo de ocorrências de entidade que estão associadas a uma ocorrência de entidade através de um relacionamento. Podendo ser representada através do número 0 (zero) ou número 1 (um). • A cardinalidade mínima 1 também recebe a denominação de “associação obrigatória”, já que ela indica que o relacionamento deve obrigatoriamente associar uma entidade com a outra. • Como base esta linha de raciocínio, a cardinalidade mínima 0 recebe a denominação de “associação opcional”. Generalização /Especialização: • No mecanismo de generalização, atributos comuns a entidades de mais baixo nível são representados uma única vez na entidade de mais alto nível. Observe os exemplos. Generalização /Especialização: Existem dois tipos de generalização/especialização: Total (representada pela letra T) e Parcial (representada pela letra P): • na Total, para cada ocorrênciada entidade genérica existe sempre ocorrência em uma das entidades especializadas; • na Parcial, nem toda ocorrência da entidade genérica corresponde a uma entidade especializada; Generalização /Especialização: Generalização /Especialização: Entidade associativa: • Em alguns casos, é necessário que associemos uma entidade com a ocorrência de um relacionamento. O modelo de entidades e relacionamentos não permite relacionamentos entre relacionamentos, somente entre entidades. A idéia da entidade associativa é tratar um relacionamento como se ele fosse uma entidade. Observe o modelo abaixo: Entidade associativa: • Se desejarmos controlar os medicamentos receitados pelo médico em determinada consulta, temos que relacionar a entidade medicamento com o fato de ter havido uma consulta (relacionamento consulta). Entidade associativa: • Como não podemos fazer isso diretamente, indicamos que o relacionamento consulta é uma entidade associativa, através de um retângulo em volta do relacionamento.
Compartilhar