Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Transformação entre modelos Conceitual (E-R) para Lógico (Relacional) Modelo Relacional Proposto por Edgar Codd em 1970 Artigo "Relational Model of Data for Large Shared Data Banks". Modelo de dados baseado na teoria dos conjuntos Primeiro modelo de dados descrito teoricamente e provado matematicamente como correto Modelo Relacional – Elementos Relações (tabelas) Atributos (colunas, campos) Registros (linhas) Atributo 1 Atributo 2 Atributo N 11 12 1N 21 22 2N N1 N2 NN Atributos Registros Modelo Relacional – Atributos Chave Primária (Primary Key – PK) Atributo ou combinação de atributos que identifica unicamente cada registro de uma tabela Valores não podem se repetir em uma mesma tabela Cada tabela tem uma e somente uma chave primária Simples: composta por um único atributo Composta: formada por 2 ou mais atributos O que não pode se repetir é a combinação dos valores dos atributos Modelo Relacional – Atributos Chave candidata ou única (Unique Key – UK) Atributo cujos valores não podem se repetir em uma mesma tabela, mas não é chave primária Modelo Relacional – Atributos Chave Estrangeira (Foreign Key – FK) Atributo que está em uma tabela, mas que originalmente pertence a outra tabela Serve para referenciar (um registro de) outra tabela a partir da tabela em que se está Uma FK em uma tabela sempre contém todos os campos que são PK na tabela referenciada (de onde os campos se originam). Os nomes dos campos das FKs não precisam ser os mesmos nomes dos campos na tabela referenciada. Modelo Relacional – Notação Departamento (codDepto, nomeDepto) Funcionario (RG, orgao, nome, dataNasc, cargo, depto) depto referencia Departamento Dependente (codigo, nome, RG_func, orgao_func) (RG_func, orgao_func) referencia Funcionario Nome da tabela Atributos Chave primáriaChave primária composta Chave estrangeira Chave estrangeira composta Modelo E-R x Modelo Relacional Entidade-Relacionamento Entidades Atributos Relacionamentos Atributos Cardinalidades Especialização Relacional Relações (tabelas) Registros (linhas) Atributos (colunas, campos) ? Regras básicas 1. Entidades 2. Atributos 3. Relacionamentos 4. Generalização / especialização Entidades 1. Toda entidade é transformada em uma tabela. 2. Se for uma generalização / especialização, aplica-se a regra 4. Atributos 1. Todo atributo da entidade gera uma coluna na respectiva tabela 2. Se o atributo for identificador, a coluna passa a compor a chave primária. Relacionamentos Depende da cardinalidade! Se for 1-para-1 (1:1) Possivelmente representa um “erro” de modelagem As entidades associadas podem ser fundidas em uma única tabela. Esta tabela tem os atributos de ambas as entidades. Se optar por manter as 2 tabelas, então escolhe-se uma das tabelas que recebe a chave primária (PK) da outra tabela. Este campo adicional é chave estrangeira. Relacionamentos Se for 1-para-N (1:N) À tabela correspondente a entidade do lado N é adicionada uma (ou mais) coluna(s) representando a chave primária (PK) da tabela correspondente a entidade do lado 1. Esta(s) coluna(s) é(são) chave estrangeira (FK) para a tabela associada. Se o relacionamento for identificador, então a chave estrangeira (FK) também fará parte da chave primária (PK) desta tabela. Relacionamentos Se for N-para-N (N:N) Deve ser criada uma tabela adicional. A chave primária (PK) desta tabela é composta pelas chaves primárias das tabelas correspondentes as entidades associadas Estas colunas são, também, chave estrangeira (FK) para as tabelas de origem das chaves. Caso existam atributos no relacionamento, estes viram colunas desta tabela adicional. Se o atributo for identificador, passa a compor, também, a chave primária. Generalização / Especialização Existem 2 possibilidades Criar uma única tabela para toda a hierarquia Criar uma tabela para cada entidade da hierarquia Uma tabela para cada entidade especializada (não é indicado). Generalização / especialização Uma tabela para toda a hierarquia Em geral, mantem-se o nome da tabela mais genérica Esta tabela contem todos os atributos e relacionamentos de todas as entidades envolvidas na hierarquia Costuma-se adicionar ainda uma outra coluna, chamada “tipo”. Generalização / especialização Uma tabela para cada entidade da hierarquia Cada tabela recebe os atributos da entidade que a gerou. A chave primária (PK) das tabelas especializadas é exatamente a mesma chave primária (PK) da tabela oriunda da entidade genérica. Contudo, nas tabelas especializadas, esta PK é, também, chave estrangeira (FK) para a tabela genérica. Generalização / especialização Independente da abordagem utilizada (uma tabela só ou várias tabelas), os relacionamentos são tratados como na regra 3 (relacionamentos) Slide 1 Slide 2 Slide 3 Slide 4 Slide 5 Slide 6 Slide 7 Slide 8 Slide 9 Slide 10 Slide 11 Slide 12 Slide 13 Slide 14 Slide 15 Slide 16 Slide 17 Slide 18