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