Informática Aplicada Março 2010 Bases de Dados Tabelas, chaves, relacionamentos, integridade referencial.

Slides:



Advertisements
Apresentações semelhantes
Base de Dados para a Gestão de Informação de Natureza Pedagógica
Advertisements

Banco de Dados Prof. Antonio.
Banco de Dados I Aula 20.
Base de Dados para a Gestão de Informação de Natureza Pedagógica
Base de Dados para a Gestão de Informação de Natureza Pedagógica
A17 – Primeiros passos na utilização das TIC
DESENHO de BASE de DADOS RELACIONAL
Evolução dos SGBD’s (2ª Parte).
Prof.: Bruno Rafael de Oliveira Rodrigues
Escola Secundária da Ramada
Introdução a Bancos de Dados
Ferramentas CASE ERwin
Folha de Cálculo TIC 10.
Folha de Cálculo TIC 10.
7 - Criação de Páginas Web
Com a ajuda do GOOGLE: O que é uma Base de Dados?!
Bases de dados TIC - Lourdes Cruz.
Biblioteca do Conhecimento Online – b-on FONTES DE INFORMAÇÃO SOCIOLÓGICA.
Web: criação de páginas
TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO
Bases de dados.
Unidade I Noções básicas de Tecnologias da Informação e Comunicação.
Treinamento do Microsoft® Access® 2010
Microsoft Access Carlos Sebastião.
Silvane Gonçalves Analista de Sistemas
Base de Dados para a Gestão de Informação de Natureza Pedagógica
Treinamento do Microsoft® Access® 2010
UML – Diagrama de Classes
Usando Microsoft Access 2010
ACCESS Introdução às Tecnologias de Informação II
Bases de Dados.
É um conjunto de registos dispostos numa estrutura regular que possibilita a reorganização dos mesmos e a produção de informação com a menor redundância.
Design Patterns / Acesso ao banco de dados (java.sql)
Criar e editar conteúdos para a Plataforma Moodle
ACESSO A BASE DE DADOS.
INTRODUÇÃO ÁS BASES DE DADOS
ACCESS 2007 EDIMILSON JÚNIOR.
Tecnologias da Informação e Comunicação
Ano letivo CURSO EFA DE TÉCNICO DE INFORMÁTICA E SISTEMAS Docente: Ana Batista EDUCAÇÃO E FORMAÇÃO DE ADULTOS Curso EFA – Sec. Turma C
Banco de dados.
Conceitos Programas Programação Linguagens de Programação SQL.
Curso Técnico em Mineração
Análise de Sistemas de Informação
GESTÃO DE FICHEIROS ÍNDICE Pág. I.Instalação do Software 2 II.Selecção de Empresas / Manutenção de Empresas 5 III.Criação da Base de Dados (Clientes,
Escola Básica e Secundária Vieira de Araújo
Introdução Neste trabalho vamos falar sobre os elementos de uma base de dados, aprofundando mais as tabelas, que é o nosso tema.
Campus de Caraguatatuba Aula 2: Introdução a Tecnologia de BD
Introdução a Banco de Dados
Introdução ao MS Access
UNIDADE 4: Processamento de texto
Escola Básica e Secundária Vieira de Araújo
VBA - Introdução Pontifícia Universidade Católica de Goiás
Professor: Pedro Lopes Gestão de Base de dados Ano Lectivo 2010/2011.
Base de dados – Microsoft Access 2007 Como chegar até ao programa.
Professor: Pedro Lopes Gestão de Base de dados Ano Lectivo 2010/2011.
Professor: Pedro Lopes Gestão de Base de dados Ano Lectivo 2010/2011.
Sistemas de Gestão de Bases de Dados Educação e Formação de Adultos (EFA) Operador de Informática Arcozelo 2009/2010 Curso Co-Financiado por:
Banco de Dados Maria Augusta (Magu).
Professor: Pedro Lopes Gestão de Base de dados Ano Lectivo 2010/2011.
Introdução às Tecnologias de Informação e Comunicação
Cenário / Maquete Web Site CPAuto Trabalho elaborado por: Cecília Melo (ci08004) António Castro (ci08045) Pedro Seabra (ci08001)
Formulários.
Folha de Cálculo Professor: Pedro Lopes Ano Lectivo 2010/2011.
Sistemas de Gestão De Bases de Dados
TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO FOLHA DE CÁLCULO OPERAÇÕES ELEMENTARES NA FOLHA DE CÁLCULO.
Fundamentos de Banco de Dados Prof. André Cypriano M. Costa
 O Modelo E-R (Entidade-Relação)
Base de dados Iniciantes APOIO VOLUNTARIO PARTILHADO Orientador- Victor Passos.
2-Jun-16TIC – 10ºAno – 2006/2007 Criação e manipulação de tabelas no MS Access Criação de tabelas Antes de se criar a estrutura de uma tabela, deve ter-se.
Folha de cálculo - EXCEL. O que é a folha de cálculo Folha de cálculo integrada: – Funções de base de dados – Possibilidade de criação de gráficos – Ferramentas.
Transcrição da apresentação:

Informática Aplicada Março 2010 Bases de Dados Tabelas, chaves, relacionamentos, integridade referencial

Porque precisamos Base de Dados? Imagina que representamos a informação assim: “Os senhores J. Costa e F. Moreira, respectivamente com os números 51 e 102 trabalham no departamento de vendas, que tem o código 002. O primeiro tem 40 anos e o segundo 31. O Sr A. Silva tem o número 101, tem 27 anos e trabalha no Marketing, departamento 001. O chefe do Marketing é o Sr. M, o chefe das vendas é o Sr. V.” Observamos que não é muito fácil ver de que se trata! Assim, surge a questão_ Como guardar esta informação de forma a: facilitar a manutenção dos dados? facilitar o tratamento informático? manter toda a informação relevante? Informática Aplicada 2

Base de dados relacional A informação organiza-se em tabelas: campos (colunas) registos (linhas) Informática Aplicada 3

Bases de Dados Todas as empresas e organizações utilizam sistemas de gestão de bases de dados nas várias camadas da sua actividade, tais como operação, análise e arquivo. Só dessa forma conseguem lidar com as enormes quantidades de informação que todos os dias recebem, produzem e utilizam. Neste módulo vamos conhecer os conceitos das bases de dados relacionais e utilizar o Access para pôr em prática esses conceitos. Outros sistemas de bases de dados relacionais disponíveis: Oracle, DB2, Informix, etc... 4 Informática Aplicada

Tópicos Bases de dados relacionais Tabelas, campos, registos Chave primária Relacionamentos Integridade referencial Consulta de informação Query by example (QBE) Consultas de agregação Consultas de acção Interface Formulários Botões, sub-formulários Caixas de opções 5 Informática Aplicada

Sistema de Gestão de Base de Dados: Access Uma base de dados é constituída por um conjunto de objectos. – Um objecto é uma estrutura de dados (como a informação é guardada), associada a um conjunto de propriedades e métodos (como a informação é manipulada). No Access os objectos são: Nosso foco na disciplina será: – Tabelas (Table) - armazenar de forma permanente a informação – Consultas (Query) - seleccionar informação – Formulários (Forms) - Visualizar e editar a informação Outros tópicos (não abordados na disciplina): – Relatórios (Reports) - Elaborar relatórios – Macros - automatizar acções – Módulos - programação 6 Informática Aplicada

Sistema de Gestão de Base de Dados: Access A utilização de uma instância de um objecto envolve dois passos: – definição da estrutura - botão NEW – executar o objecto - botão Open – É possível redefinir os parâmetros de uma instância de um objecto: botão Design. Cada base de dados Access é constituída por um conjunto de instâncias dos objectos que são guardados num único ficheiro de extensão MDB. 7 Informática Aplicada

Tabelas Toda a informação que é guardada de uma forma permanente pelo "Access" é guardada em Tabelas. Cada tabela tem um numero ilimitado de registos (linhas) mas um número fixo de campos (colunas). Para armazenar informação numa tabela é necessário, previamente, definir a sua estrutura, ou seja especificar os campos que constituem a tabela. 8 Informática Aplicada

Tabelas: vista de estrutura 9 Informática Aplicada

Exercicio 10 Informática Aplicada

Definir Campos Definir os Campos Um campo é definido por um nome e um tipo de dados. O nome do campo identifica-o e possibilita aceder à informação nele contida. Deverá ser significativo. A escolha do tipo de dados vai definir: a espécie de informação (números, texto, datas, etc) que o campo pode armazenar o espaço (em bytes) que o campo ocupa. 11 Informática Aplicada

Tipos de Campos Tipo de dadoDescriçãoTamanho Text caracteres alfanuméricosaté 255 bytes Memo caracteres alfanuméricosaté 32Kb Number valores numéricos1, 2, 4 ou 8 bytes Date/Time datas e tempo8 bytes Currency valores monetários8 bytes Counter valores inteiros (actualizados pelo Access) 4 bytes Yes/No valores booleanos1 bytes OLE gráficosaté 128 Mb A escolha de um tipo de campo está relacionada com as operações que se pretendem efectuar nesse campo 12 Informática Aplicada

Campos com números Número inteiro pequeno (integer) inteiro grande (long integer) real (números com casas decimais) precisão simples (single) real (números com casas decimais) precisão dupla (double) Auto-numer preenche-se automaricamente com inteiros (tem o tamanho de um inteiro longo) Exemplos: número de aluno código de disciplina 13 Informática Aplicada

Tipo Auto-Number Auto preenche-se com inteiros longos tem o tamanho de um inteiro longo Exemplos: número de aluno código de disciplina 14 Informática Aplicada

Propriedades PropriedadeObjectivoAplica-se FieldSizeLimitar o tamanho de camposText e Number Format Altera a maneira como o valor do campo é mostrado Date, Number, Currency Decimal PlacesNr. de casas decimaisNumber, Currency Default ValueValor por defeito Text, Number, Date/Time, Yes/No Validation Ruledefinir o domínio do campoText, Number, Date/Time Validation Text Mensagem de erro mostrada quando a regra de validação não é verificada Text, Number, Date/Time Indexedpossibilita acelerar a procura Text, Number, Date/Time, Counter : Associado a cada campo, existe um conjunto de propriedades, que possibilitam refinar as características desse campo 15 Informática Aplicada

Validation Rule and Validation Text Validation RuleValidation Text >=0Digite um numero positivo >=0 AND =<20Digite um numero entre 0 e 20 = OR >=100 Valor tem que ser zero ou maior que 100 Like "K???" Digite 4 caracteres, começando por K <=#1/1/99#Digite data anterior a 1999 >=Date()Digite data não anterior à actual Utilizadas para validar a informação, limitando os valores que um campo pode assumir 16 Informática Aplicada

Chave primária Campo ou conjunto de campos que identificam de forma única cada registo. Por exemplo: número de aluno código de disciplina aluno+disciplina em notas A chave serve para nos referirmos a um determinado registo deve ser tão simples quanto possível Permitem estabelecer relações entre tabelas Para definir a chave da tabela, deverá : seleccionar o(s) campo(s) chave (modo DESIGN) e utilizar o ícon da "Toolbar" ou o menu Edit: Set primary Key. 17

Editar Tabelas Inserir dados Eliminar registos Corrigir dados 18 Informática Aplicada

Relacionamentos Que nota tirou o António a Informática? 19 Informática Aplicada

Relacionamentos Indicam que campos em tabelas diferentes têm a mesma informação alunos.número é relacionado com notas.aluno disciplinas.código é relacionado com notas.disciplina Conjunto de tabelas pode ser visto como um só. É necessário definir os relacionamentos no Access 20 Informática Aplicada

Relacionamentos Podemos obter a vista da informação... (será explicado nas consultas) 2121 Informática Aplicada

Não faz sentido... Relacionar campos com informação diferente devem ter o mesmo tipo o mesmo tamanho excepção: AutoNumber e Long Integer 22 Informática Aplicada

Tipos de relacionamentos 1 para N 23 Informática Aplicada

Tipos de relacionamentos 1 para 1 24 Informática Aplicada

Tipos de relacionamentos N para N  relacionamento de N:N corresponde a dois rel. 1:N.  Utiliza-se uma tabela de junção. 1:N 25 Informática Aplicada

Integridade referencial  Regras que se podem impor aos relacionamentos.  Impedem que haja referências a coisas que não existem.  Se aplicarmos a integridade referencial  Não podemos lançar notas de um aluno que não exista.  Não podemos eliminar um aluno que tenha notas lançadas. 26 Informática Aplicada

Relacionar Tabelas No Access temos que indicar quais as tabelas que estão relacionadas e os campos comuns: – Menu Tools, Relationships. Um exemplo com duas tabelas e relação 1 a N: 27 Informática Aplicada

Regras de Integridade Não pode inserir registos na tabela do lado N da relação se não existir o correspondente registo na tabela do lado 1 da relação. Não pode eliminar registos na tabela do lado 1 da relação se existirem registos correspondentes na tabela do lado N da relação. 28 Informática Aplicada

Join Type 29 Informática Aplicada

Exercícios 1.Estabeleça no Access os relacionamentos na base de dados dos alunos. Imponha as restrições de integridade e veja qual o tipo de relacionamentos (deve ser 1:N). 2.O que acontece se tentar lançar uma nota a um aluno que não existe? 3.Acrescente a tabela dos Cargos. Defina um relacionamento de 1:1 entre a tabela de Alunos e a tabela de Cargos. Para o relacionamento ser de 1:1 é necessário definir o campo aluno na tabela de cargos como chave. 4.Suponha que é necessário acrescentar informações sobre professores. Crie mais uma tabela Profs com o código de um professor, nome, categoria profissional, e data de entrada ao serviço. Qual é o campo chave desta tabela? 5.Acrescente à tabela disciplinas um campo Regente que indica qual o professor regente da disciplina. Como se vai referir ao professor? Qual o tipo de dados do campo? 30 Informática Aplicada

+ Exercícios 6.Um professor pode ser regente de várias disciplinas. Que relacionamento tem que introduzir na base de dados para relacionar as tabelas Profs e Disciplinas? Defina o tipo de relacionamento. 7.Suponha agora que quer guardar informação sobre o serviço que cada docente tem em cada semestre (suponhamos que o serviço é fixo de ano para ano). Crie uma tabela Serviço que diz quantas horas de aulas por semana cada professor dá a cada disciplina em cada semestre. Essa tabela irá ter os campos professor, disciplina, semestre, horas. Quais são os campos chave desta tabela? (Lembre- se de que o conjunto dos campos chave deve ter um valor único para cada registo e deve ser tão simples quanto possível). 8.Como estabelecemos um relacionamento de N para N entre a tabela de professores e a tabela de disciplinas? 9.Experimente a funcionalidade "Cascade Delete Related Records". Apague o registo relativo a um aluno para o qual haja notas lançadas. 31 Informática Aplicada

+ Exercícios Pretende-se criar uma base de dados para gerir encomendas de produto feitas por clientes. Cada encomenda tem um código, refere-se a um produto encomendado, quantidade encomendada e ao cliente que encomendou. Tem também a data da encomenda. Cada cliente tem um código, nome e morada. Cada produto tem um código, nome e preço unitário. 1.Indique quais os campos chave e defina os relacionamentos que achar convenientes. Quais o tipos de relacionamentos? 2.Agora quero alterar a base de dados para que seja possível, em cada encomenda, incluir vários produtos (como é normal). Como podemos fazer isso? Sugestão: Divida a tabela encomendas em duas tabelas, cabeçalho de encomenda e detalhes de encomenda. Defina as novas tabelas, os campos chave e os novos relacionamentos. 32 Informática Aplicada

Anexo: Detalhes sobre Tamanho dos Campos Fieldsize (campos Number) Intervalo Casas Decimais Tamanho Byte0 a byte Integer a bytes Long a bytes Single a bytes Double -1.8* a 1.8* bytes Ao definir um campo, deverá ter atenção principalmente á propriedade FieldSize. 33 Informática Aplicada