TABELAS Banco de dados RELAÇÃO Banco de dados = Conjunto de dados armazenado eletrônicamente Relação = Conjunto de elementos da mesma estrutura A ESTRUTURA Baseada em TABELAS ( estrutura de dados que é utilizado para implementar uma relação em um BD relacional) Cliente Itens Fornecedor Empregados ENTIDADE, RELAÇÃO E TABELA Entidade é um elemento no domínio da aplicação que vai ser representado em um BD; Relação - Conjunto de ocorrências de uma entidade; Tabela - estrutura de dados usada para implementar uma relação em um BD; GRAU DE UMA RELAÇÃO É o número de atributos que uma relação possui Atributos Código Título Edição Autor 17 Redes de Computador es 2ª João da Silva 289 Banco de Dados 1ª Maria Luiza TUPLA Uma linha em uma relação que representa uma instância com valores definidos. Tupla Tupla Código Título Edição Autor 17 Redes de Computador es 2ª João da Silva 289 Banco de Dados 1ª Maria Luiza Na relação acima de livros temos 2 tuplas ESQUEMA DE RELAÇÃO ESQUEMA DA RELAÇÃO Matricula Nome Curso 25478 Antônio Bonfim Enfermagem 25684 Julia Almeida Informática Vão compor a lista de atributos de uma tupla dessa relação ALUNO = Nome dessa relação CHAVES E SUPERCHAVES Chave = atributo que permite identificar de maneira única uma tupla em uma relação Atributo que permite encontrar uma única tupla dentro de uma relação Campo que permite identificar de maneira única um registro dentre todos os registros que compõem uma tabela Atributo que permite identificar uma instância em particular dentre todas as ocorrências de uma entidade no BD SUPERCHAVE É um conjunto de um ou mais atributos que, tomado coletivamente, permite-nos identificar unicamente uma entidade no conjunto de entidades. Código Título Edição Autor 17 Redes de Computador es 2ª João da Silva 289 Banco de Dados 1ª Maria Luiza A combinação código e título é uma superchave CHAVE CANDIDATA É cada atributo que pode ser usado como chave RESTRIÇÕES DE INTEGRIDADE São regras que devem ser sempre satisfeitas Unicidade de chave - é um restrição que protege a duplicidad da chave candidata, não permitindo que ela possua o mesmo valor em duas tuplas distintas Integridade da entidade - a chave primária não pode te o valor nulo INTEGRIDADE REFERENCIAL Envolve duas ou mais relações Prevê bloqueios ou restrições a algumas operações Relação 2 Relação 1 INTEGRIDADE REFERENCIAL CATEG S D P COD NOME IDADE CAT 001 DAYANE 29 S 002 ANTÔNIO 17 D 005 AUGUSTO 46 P Exclusão da categoria causaria uma quebra da consistência do BD DIAGRAMA ENTIDADE-RELACIONAMENTO (DER) Entidade Atributo Relacionamento "Objeto" do mundo real: um ser, um fato, uma coisa, etc. Informaçãoes que se deseja guardar sobre o objeto Associações existentes entre elementos de entidades Número de ocorrências possíveis de cada Cardinalidade entidade envolvida num relacionamento ATIVIDADES Um professor pode ministrar várias disciplinas: Deve-se conhecer a capacitação do professor: congressos, cursos de pós-graduação, cursos de extensão e trabalhos publicados. 1 Professor Ministra N Tem Capacitação Possui N Disciplinas Congresso Extensão Pós Publicação Identificando as entidades Construir um banco de dados para um sistema de vendas. Em cada venda são vendidos vários produtos e um determinado produto pode aparecer em várias vendas. Cada venda é efetuada por um vendedor para um determinado cliente. O produto está armazenado em uma determinada prateleira. IDENTIFICANDO AS ENTIDADES Uma administradora de imóveis trabalha com condomínios e aluguéis. Uma entrevista com o gerente resultou nas seguintes informações: A administradora administra condomínios formados por unidades. Cada unidade condominial é de propriedade de uma ou mais pessoas. Cada pessoa pode possuir diversas unidades. Cada unidade pode estar locada para apenas uma pessoa. Uma pessoa pode alugar várias unidades. IDENTIFICANDO OS RELACIONAMENTOS Construir um banco de dados para um sistema de vendas. Em cada venda são vendidos vários produtos e um determinado produto pode aparecer em várias vendas. Cada venda é efetuada por um vendedor para um determinado cliente. O produto está armazenado em uma determinada prateleira. IDENTIFICANDO A CARDINALIDADE Construir um banco de dados para um sistema de vendas. Em cada venda são vendidos vários produtos e um determinado produto pode aparecer em Heuser, Carlos A. Projeto de banco de dados. Ed. Sagra e Luzzato. Porto alegre, 1999 várias vendas. Cada venda é efetuada por um vendedor para um determinado cliente. O produto está armazenado em uma determinada prateleira TRABALHO PRODUTIVO Situação 1 – Transportadora Uma transportadora aérea pretende implementar uma base de dados com a seguinte informação: A transportadora tem vários aviões. Cada avião tem, para além da matrícula, um nome, a marca do avião, o número de lugares, e indicação da sua autonomia. Na transportadora trabalham vários pilotos. Cada avião faz vários vôos. Cada vôo deve ter, pelo menos, a indicação da data e hora em que se efetua, dos locais de partida e de destino. Cada vôo de um dado avião é pilotado por um piloto. TRABALHO PRODUTIVO Uma fábrica pretende implementar uma base de dados para gerir os "stocks" dos seus armazéns, as encomendas, e as vendas. Para tornar o problema menos extenso, não vamos aqui considerar a parte relativa às vendas. Há assim que ter em conta que: A empresa comercializa vários produtos, cada um dos quais com um código, um nome, e um preço. Em cada momento a empresa deve ainda saber qual a quantidade existente no armazém de cada um dos produtos. Uma encomenda, que deve ter um número de encomenda e a data em que foi feita, pode ter vários produtos, mas diz respeito apenas a um fornecedor. De cada fornecedor a empresa deseja guardar a informação do seu nome, número de contribuinte, morada,