TABELA Æ ENTIDADE LINHA Æ OCORRÊNCIA DA ENTIDADE COLUNAÆ ATRIBUTO DA ENTIDADE CARACTERISTICA DE UMA TABELA: •NÃO EXISTEM DUAS LINHAS IGUAIS •A ORDEM DAS LINHAS É INSIGNIFICANTE •A ORDEM DAS COLUNAS É INSIGNIFICANTE •ATOMICIDADE DOS ATRIBUTOS CONTEÚDO DE UMA COLUNA NUMA LINHA: VALOR ASSUMIDO POR UM ATRIBUTO PARA UMA OCORRÊNCIA ESPECÍFICA DE UMA ENTIDADE 36 MODELO RELACIONAL UM BANCO DE DADOS RELACIONAL É PERCEBIDO LOGICAMENTE COMO UM CONJUNTO DE TABELAS INTER-RELACIONADAS 37 Modelo Lógico 38 MODELO LÓGICO Disposição do conjunto de dados em termos da estrutura de armazenamento própria da tecnologia de gerenciamento de dados escolhida, baseada nas necessidades do negócio detectadas e expressas na fase de modelagem conceitual Deriva da construção de tabelas inter-relacionadas a partir das entidades e relacionamentos definidos no MER e representados pelo DER: 39 Criação de tabelas a partir do D.E.R. •Os atributos das entidades e relacionamentos já devem estar definidos •A chave primária já deve ter sido escolhida para todas as entidades REGRAS: (baseadas na classe dos relacionamentos) •Toda entidade gera uma tabela composta de tantos campos quantos atributos ela contiver •RELACIONAMENTOS M:N geram uma tabela cuja chave primária será composta das chaves primárias das entidades relacionadas •RELACIONAMENTOS 1:1 E 1:N não geram nova tabela, mas implicam na agregação dos seus atributos à entidade de cardinalidade N(ou 1) bem como a agregação da chave primária da entidade de cardinalidade 1 à de cardinalidade N. 40 Chave Estrangeira Quando adicionamos a chave primária de uma entidade a outra entidade para construir um relacionamento de classe 1:1 ou 1:N, essa chave (primária na sua entidade de origem) torna-se CHAVE ESTRANGEIRA na entidade que a recebe. 41 Exemplo: Relacionamento de classe muitos-para-muitos 42 Atributo Chave IDENTIFICA DE FORMA ÚNICA UMA OCORRÊNCIA ESPECÍFICA DE UMA ENTIDADE: CHAVE CANDIDATA Todas as possíveis chaves de uma entidade ou relacionamento são chaves candidatas. Uma entidade ou relacionamento pode ter nenhuma, uma ou várias chaves candidatas. CHAVE PRIMÁRIA •Um ou mais atributos que juntos identificam de forma única uma Entidade, sendo base para o acesso aos dados e para implementação de relacionamentos. Seus valores nunca podem ser duplicados em uma tabela. •Depende da Aplicação CHAVE SECUNDÁRIA •Um ou mais atributos que juntos identificam de forma única uma entidade, além da chave primária. CHAVE ESTRANGEIRA •É o atributo que é chave primária em uma outra Entidade 43 Lei de Integridade A chave primária de uma tabela não pode aceitar valores “null”. Se uma tabela T2 contém um atributo K1, sendo K1 a chave primária de outra tabela T1, então, para cada valor de K1 em T2 deve existir um valor igual de K1 em alguma tupla de T1 ou K1 de T2 deve ser “null”. A inclusão de uma chave estrangeira em uma tabela é a forma de implementar, no Modelo Lógico, um relacionamento entre entidades do Modelo Conceitual. 44 Álgebra Relacional 45 Álgebra Relacional CONJUNTO DE OPERADORES DE ALTO NÍVEL QUE MANIPULAM OS DADOS COLETADOS EM UMA OU MAIS TABELAS TIPOS DE OPERAÇÕES: TRADICIONAIS ¾UNIÃO (OPERADOR OU) ¾INTERSECÇÃO (OPERADOR E) ¾DIFERENÇA ¾PRODUTO CARTESIANO ESPECIAIS ¾SELEÇÃO ¾PROJEÇÃO ¾JUNÇÃO 46 União A união de duas tabelas normalizadas “A” e “B”, é uma tabela normalizada “C” que contém todas as linhas de “A” e/ou “B”. 47 Intersecção A intersecção das tabelas “A” e “B” é uma tabela normalizada “C” que só contém aquelas linhas que pertencem a “A” e “B” simultaneamente. 48 Diferença A diferença entre duas tabelas “A” e “B” é uma tabela normalizada “C” que contém as linhas de “A” que não pertencem a “B”. 49 Produto Cartesiano O produto cartesiano de duas tabelas “A” e “B” é uma tabela “C” cujas linhas são obtidas fazendo todas as concatenações possíveis entre as linhas de “A” e “B”. 50 Projeção A projeção de uma tabela normalizada sobre uma ou várias de suas colunas é uma nova tabela que contém somente as colunas projetadas. 51 Banco de Dados Relacional Definição de Cód-Touring Um sistema de Banco de Dados é qualificado de relacional se: A. É composto por tabelas (e só tabelas) B. Implementa as operações de SELECT, PROJECT e JOIN sem necessidade de definir estruturas fisicas de acesso 52