Banco de Dados I 4P/SI – 2010/02 Prof. Carlos Alberto Seixas Agenda Implementação de BD Exercício Prático Individual Implementação BD: Conceitos Básicos Estrutura Básica Um banco de dados relacional consiste de uma coleção de relações (tabelas) de nomes únicos. Cada tabela possui um conjunto de linhas que representa um relacionamento entre um conjunto de valores. Uma tabela é formada por um conjunto de colunas denominadas de atributos e por um conjunto de linhas denominadas de tuplas. Para cada atributo existe um conjunto de valores permitidos, chamado de domínio. Definindo uma Relação Esquema Aluno: Aluno (Nome, SSn, Fone, End, FoneComercial,idade, Média) Especificando os domínios: Aluno (Nome: string, SSn:string, Fone:string, End:string, FoneComercial:string, Idade: string,Média:real) Tupla ou registro Uma definição alternativa para uma tupla é: um conjunto de pares (<atributo>,<valor>), em que cada par fornece o valor do mapeamento de um atributo Ai para um valor vi do dom(Ai). As tuplas (registros) abaixo são idênticas: T = <(Nome, Dick Davisdson),(SSN, 422-11- 2320),(FoneResidencial, null),(Endereço, 3452 Elgin Road),(FoneEscritorio, 749-1253),(Idade,25),(MPG 3,53)> T = <(Endereço, 3452 Elgin Road),(Nome, Dick Davisdson),(Idade,25),(MPG 3,53),(SSN, 422-11- 2320),(FoneEscritorio, 749-1253),(FoneResidencial, null)> Modelo Entidade Relacionamento Modelo Relacional No exemplo a seguir: Representação tabular A tabela para o conjunto de relacionamentos agente_empréstimo inclui uma coluna para cada atributo, uma para chave primária do conjunto de entidades empregado e uma para o conjunto de relacionamentos devedor. Assim: cliente, com os atributos nome_cliente, seguro_cliente, rua, cidade; empréstimo, com os atributos número_empréstimo, total; devedor, com os atributos seguro_cliente, número_empréstimo; empregado, com os atributos seguro_empregado, nome_empregado, número_telefone; agente_empréstimo, com os atributos seguro_empregado, número empréstimo e seguro_cliente. Resolução do Exercício 1. Pense e descreva quais as tabelas e campos seriam necessários para o banco do exemplo a seguir: 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, além da matrícula, um nome, o modelo do avião, o número de lugares, e a indicação da sua autonomia. Na transportadora trabalham vários pilotos. Sobre cada piloto pretende-se guardar o nome e número de licença, assim como quais os modelos de aviões que podem pilotar. Pretende-se ainda, guardar a informação relativa ao nome, data de nascimento de cada um dos descendentes (caso existam) dos 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 acontecerá, dos locais de partida e de destino. Cada vôo de um dado avião é pilotado por um piloto. Glossário Campo Chave Primária identifica de maneira única cada registro de uma Tabela, isto é, de posse do valor da Chave Primária somente localizaremos um registro com aquele valor no campo Chave Primária. Outros exemplos de campos que podem ser definidos como chaves primária: Campo CPF, Campo CNPJ em uma tabela de cadastro de fornecedores. ,Matrícula do aluno em uma tabela de cadastro de alunos, Código da Peça em uma tabela de cadastro de peças, Matrícula do funcionário em uma tabela de cadastro de funcionários.Número do pedido em uma tabela de cadastro de pedidos Chave estrangeira Um esquema de relação pode incluir entre seus atributos a chave primária de outro esquema. Essa chave é chamada chaveestrangeira. O atributo nome_agência em Conta é uma chave estrangeira, jáque é chave primária em Agencia.