• Nenhum resultado encontrado

Introdução a Banco de Dados e Access

N/A
N/A
Protected

Academic year: 2021

Share "Introdução a Banco de Dados e Access"

Copied!
8
0
0

Texto

(1)

Introdução a Banco de

Dados e Access

Isabel Harb Manssour

Porto Alegre, maio de 2007

Baseado no material das professoras Miriam Sayão, Adriana Beiler e Elisa Boff

1.

1.

Conceitos B

Conceitos B

á

á

sicos de Banco de

sicos de Banco de

Dados

Dados

2.

Microsoft Access

3.

Modelo Entidade-Relacionamento

4.

Planejamento de Banco de Dados

Roteiro

Conceitos Básicos de Banco de Dados

Arquivos

Permitem o armazenamento permanente de dados

Dados persistentes

Dispositivos de armazenamento secundários

Armazenam arquivos

Discos magnéticos, discos ópticos, fitas magnéticas

Conceitos Básicos de Banco de Dados

Campo (Field)

Conjunto de caracteres com o mesmo significado Exemplo: nome

Registro (Record)

Conjunto de campos relacionados

Exemplo: nome, endereço, idade, telefone de uma pessoa

Representado por uma instância de uma classe

Arquivo (File)

Conjunto de registros relacionados

Exemplo: informações sobre um grupo de pessoas

Conceitos Básicos de Banco de Dados

: : : : : 873260269 028.480/8 223.66.51 Ipiranga 67 Maria Santos 456546568 454.567/8 353.46.54 Siqueira 34 João Neto 271646252 345.565/9 332.56.35 Andradas 34 Ana Silva RG CIC Telefone Endereço Nome Campo Registro Arquivo Ficha Nome: ____ Endereço: _____ Telefone: ______ CIC: ______ RG: _______ Registro Campos

Conceitos Básicos de Banco de Dados

Arquivo seqüencial

Todos os registros estão organizados na forma de uma lista, um depois do outro.

Os registros podem estar dispostos ordenadamente, obedecendo a seqüência determinada pela chave primária.

É possível incluir, excluir, alterar e consultar os registros.

(2)

Conceitos Básicos de Banco de Dados

Arquivo seqüencial

Exemplo: Nome: João End: ____ Fone: ____ Válido: V Nome: Maria End: ____ Fone: ____ Válido: V Nome: José End: ____ Fone: ____ Válido: V Nome: Ana End: ____ Fone: ____ Válido: V Nome: Paulo End: ____ Fone: ____ Válido: V

Todos os registros possuem o mesmo tamanho e são armazenados seqüencialmente na memória

E O F

Conceitos Básicos de Banco de Dados

Arquivo seqüencial

Pesquisa seqüencial Nome: João End: ____ Fone: ____ Válido: V Nome: Maria End: ____ Fone: ____ Válido: V Nome: José End: ____ Fone: ____ Válido: V Nome: Ana End: ____ Fone: ____ Válido: V Nome: Paulo End: ____ Fone: ____ Válido: V Nome: Rita End: ____ Fone: ____ Válido: V E O F

Conceitos Básicos de Banco de Dados

Arquivo de índice

Consiste em um arquivo que guarda o campo chave e a posição do registro no disco Exemplo: Nome: João End: ____ Fone: ____ Válido: V Nome: Maria End: ____ Fone: ____ Válido: F Nome: José End: ____ Fone: ____ Válido: V Nome: Ana End: ____ Fone: ____ Válido: V Nome: Paulo End: ____ Fone: ____ Válido: V Nome: Rita End: ____ Fone: ____ Válido: V

E100 E101 E102 E103 E104 E105

Arquivo de Dados Arquivo de Índice E O F Chave: Ana

Posição: E103 Chave: JoãoPosição: E100 Chave: JoséPosição: E102 Chave: MariaPosição: E101 Chave: PauloPosição: E104 Chave: RitaPosição: E105 E O F

Conceitos Básicos de Banco de Dados

Arquivos de índice

Permitem o acesso rápido às dados Vários podem ser criados

Índice por nome Índice por idade Índice por telefone ...

Conceitos Básicos de Banco de Dados

Programas que trabalham com arquivos

devem permitir

Incluir, excluir, consultar e alterar registros Incluir novos campos nos registros Excluir campos dos registros

Gerar listagens com diferentes ordenações

Conceitos Básicos de Banco de Dados

Banco de Dados (ou base de dados - BD)

Conjunto de arquivos relacionados

Dados com uma estrutura regular que organizam a informação

Normalmente agrupa informações utilizadas para um mesmo fim.

Exemplo: folha de pagamento, controle de estoque, controle de contas

(3)

Conceitos Básicos de Banco de Dados

SGBD - Sistema Gerenciador de Banco

de Dados

Conjunto de programas cujo objetivo principal é gerenciar o acesso e a correta manutenção dos dados armazenados no banco de dados Exemplos: Microsoft Access, Oracle, Sybase, etc.

1.

Conceitos Básicos de Banco de Dados

2.

2.

Microsoft Access

Microsoft Access

3.

Modelo Entidade-Relacionamento

4.

Planejamento de Banco de Dados

Roteiro

Microsoft Access

Microsoft Office Access (MSAccess)

Sistema relacional de administração de banco de dados.

Incluído no pacote Microsoft Office Professional. Permite o rápido desenvolvimento de aplicações que envolvem:

Modelagem e estrutura de dados Interface a ser utilizada pelos usuários

Microsoft Access

Trabalha com os seguintes objetos:

Tabela: armazenamentos dos dados. Consulta: filtro sobre os dados armazenados nas tabelas.

Formulários: como um formulário em papel que se preenche a mão.

Relatório:

Informação que foi organizada e formatada Meio de recuperação e apresentação dos dados

Microsoft Access

Trabalha com os seguintes objetos:

Macro

Executa automaticamente uma tarefa ou uma série de tarefas

Tarefa=ação

Módulo

Procedimentos e funções que são escritos em uma linguagem chamada de ACCESS BASIC, e que podem ser chamadas dentro de uma consulta, de um formulário ou de um relatório

Microsoft Access

Arquivos possuem extensão MDB.

Possui assistentes que facilitam a criação

dos bancos de dados.

(4)

Microsoft Access

Microsoft Access

Microsoft Access

1.

Conceitos Básicos de Banco de Dados

2.

Microsoft Access

3.

3.

Modelo Entidade

Modelo Entidade

-

-

Relacionamento

Relacionamento

4.

Planejamento de Banco de Dados

Roteiro

Modelo Entidade-Relacionamento

Banco de Dados Relacional

Segue o Modelo Relacional

Define maneiras de armazenar, manipular e recuperar dados estruturados unicamente na forma de tabelas

Modelo Entidade-Relacionamento

SGBD Relacional

Exemplo de dados organizados na forma de tabelas: Impressora 2 Computador 1 DescrTipoProd CodTipoProd 2 800 Impressora laser 4 2 600

Impressora jato de tinta 3 1 3500 PC notebook ABC 2 1 2500 PC desktop modelo x 1 CodTipoProd PrecoProd DescrProd CodProd Tipo de Produto Produto

(5)

Modelo Entidade-Relacionamento

Arquitetura de um banco de dados relacional

Entidades Atributos (coluna) Relacionamentos

Restrições sobre relacionamentos

Entidades

Representam pessoas ou objetos que existem no mundo real, e sobre os quais queremos guardar informações

Exemplos: funcionário, obra, máquina, aluno Representação:

nome da entidade

Modelo Entidade-Relacionamento

Atributos

Representam características ou informações das entidades ou dos relacionamentos Exemplos para entidades:

Funcionário: nome, matrícula, data de admissão, número da carteira profissional

Obra: responsável, data de início, custo previsto Máquina: material, tipo, responsável, custo Aluno: nome, matrícula, curso, situação

Modelo Entidade-Relacionamento

Relacionamentos

Fato ou acontecimento que liga dois objetos do mundo real (ou duas entidades do modelo) Representação:

nome

Modelo Entidade-Relacionamento

Diagrama de Entidade-Relacionamento (DER)

Utilizado para:

Interagir com o usuário

Definir depósitos permanentes de dados

Focalizar relacionamentos entre entidades, tabelas ou arquivos

Livro

Cliente Compra

Modelo Entidade-Relacionamento

Professor ministra Disciplinas Curso possui

Cardinalidade: é o número de objetos de cada tipo que participa no relacionamento

Pode ser.

1:1 (um para um); 1:N (um para muitos); N:1 (muitos para um); M:N (muitos para muitos)

Cliente 1 Compra N Item

Professor M ministra N Disciplina

(6)

Exemplo 1:

• um Aluguel pertence a no máximo um Cliente • um Cliente pode ter mais de um aluguel

1 N

Aluguel pertence Cliente

• um Fornecedor fornece vários Produtos

• um Produto pode ser fornecido vários Fornecedores M N

Fornecedor fornece Produto

Exemplo 2:

Modelo Entidade-Relacionamento

Chave

Usada para identificar linhas e estabelecer relações entre linhas de tabelas

Conjunto de um ou mais atributos que determinam a unicidade de cada registro Permite o relacionamento entre tabelas

Modelo Entidade-Relacionamento

Modelo Entidade-Relacionamento

Tipos de chave

Chave primária (PK - Primary Key):

Apresenta um valor diferente para cada registro do arquivo

Permite identificar um único registro no arquivo

Identifica o registro desejado em uma operação de acesso a um arquivo, facilitando a sua recuperação

Um campo pode ser escolhido como chave primária

Exemplo: código de um funcionário

Modelo Entidade-Relacionamento

Tipos de chave

Chave estrangeira (FK - Foreign Key)

Coluna ou combinação de colunas cujos valores aparecem necessariamente na chave primária de outra tabela

Define um relacionamento entre as tabelas e pode ocorrer repetidas vezes

Exemplo: Avenida y Rua x Endereço Beltrao 2 Fulano 1 Nome NumCliente R$ 10,00 2 2 3 R$ 15,00 3 1 2 R$ 25,00 5 2 1 Valor Quantidade NumCliente NumPedido Chave primária

Chave primária Chave estrangeira

1.

Conceitos Básicos de Banco de Dados

2.

Microsoft Access

3.

Modelo Entidade-Relacionamento

4.

4.

Planejamento de Banco de Dados

Planejamento de Banco de Dados

Roteiro

Planejamento de Banco de Dados

Com um BD você não pode fazer muitas experiências na base da tentativa e erro. Antes que você crie seu BD, deverá fazer as seguintes perguntas:

Quais dados eu desejo armazenar, e qual é a melhor maneira

de organizá-los? Isso determina as tabelas que você precisará.

Quais as ações de entrada de dados eu realizo no dia-a-dia

de minha empresa? Isso determina os formulários de que você precisará.

Quais informações eu quero saber sobre o estado da empresa? Essa resposta indica que relatórios e consultas você

(7)

Planejamento de Banco de Dados

Determinando as tabelas

Tecnicamente, você só precisa de uma tabela, o mínimo para que um banco de dados funcione. Mas o maior erro que a maioria das pessoas comete é colocar muitas informações em uma única tabela.

O Access é um programa de gerenciamento de banco de dados relacional: ele trata de muitas tabelas e cria relacionamentos entre elas.

Planejamento de Banco de Dados

Por exemplo, em um banco de dados que

registra pedidos de clientes, você pode ter

as seguintes tabelas:

Clientes Métodos de Entrega Vendedores Pedidos Produtos Detalhes do Pedido

Planejamento de Banco de Dados

Planejar as tabelas antes de criar seu banco

de dados é importante.

É difícil mudar a estrutura de uma tabela

depois que ela estiver preenchida com

dados (mas não impossível).

Planejamento de Banco de Dados

Normalização dos dados torna as tabelas o mais eficientes e compactas possíveis, para eliminar a possibilidade de confusão e erro.

Algumas regras, chamadas regras de

normalização, governam o modo como um BD

deve armazenar suas tabelas:

Evitar informações repetidas. Evitar dados redundantes.

Planejamento de Banco de Dados

Evitar informações repetidas:

Suponha que você queira manter informações de contato sobre seus clientes juntamente com um registro de cada transação que eles efetuarem. Se você mantivesse tudo em uma tabela, teria que repetir o nome completo do cliente, o endereço e o número de telefone toda vez que incluísse uma nova transação.

Também teria que mudar o endereço em cada registro de transação para esse cliente.

Planejamento de Banco de Dados

Evitar informações repetidas:

Uma maneira melhor é atribuir a cada cliente um número de código.

Inclua esse número de código em uma tabela contendo nomes e endereços.

Depois use o mesmo número de código como um vínculo em uma tabela separada que contenha as transações

(8)

Planejamento de Banco de Dados

Evitar informações repetidas

Exemplo com uma tabela:

! " #$ % & " # & ' ( ) (* % (#' + * , -.- /- 0 -- -- 12 , 3-' ( ) (* % (#' + * , -.- /- 0 - -- 12 -, 3-' ( ) (* % (#' + * , -.- /- 0 -- -- 12 ,3 % 4 5 16 ( , 3 -33 0 - --- 12 , 3-% 4 5 16 ( , 3 -33 0 -- --- 12 ,3 &77 8# 16 9 , - 033 -- -- 12 3,

--Planejamento de Banco de Dados

Exemplo após normalizar:

Tabela de Clientes Tabela de Pedidos

Código do

Cliente Nome Endereço Telefone 1 Bombeiros ABC Av. Dr. Alberto Seavre, 620 (011)3021-8542 2 Drogaria Jacó Rua dos Amantes, 465/980 9978-7766 3 Pizza do Mile Rua Leste, 108 234-9922

Código do Cliente Data do Pedido Total do Pedido 1 10/02/2001 R$ 155,90 1 12/02/2001 R$ 230,90 1 20/02/2001 R$ 35,98 2 10/12/2000 R$ 34,90 2 10/02/2000 R$ 145,98 3 20/02/2001 R$ 789,00

Planejamento de Banco de Dados

Evitar dados redundantes

Suponha que você queira acompanhar quais funcionários freqüentam certas aulas de treinamento. Existem muitos funcionários e aulas.

Uma forma seria manter tudo em uma única tabela Pessoal, da seguinte forma: :6 ; ! " #$ % " (6# 1 #7 < )= & 6 :# + 1 , 03 - - --- 9 ! + 1 > 1 & , -03-33 - - 333 ( # + # ? @ , -03 - --- ( # + 8 % 1 ?6 , -0 - - --- % 6 &A'# 3 >

Planejamento de Banco de Dados

Evitar dados redundantes

E se um funcionário tiver mais de uma aula?

Você teria de incluir uma linha duplicada na tabela para relacioná-lo e depois teria o problema descrito anteriormente: vários registros com entradas de campo praticamente idênticas.

E se o único funcionário que assistiu a uma determinada aula sair da empresa?

Quando você excluir o registro desse funcionário, apagará também as informações sobre as horas de crédito da aula.

Planejamento de Banco de Dados

Evitar dados redundantes

Uma maneira melhor seria criar tabelas separadas para Funcionário, Aulas e Treinamento Realizado, da seguinte forma:

Tabela Funcionários

Código Nome do Funcionário Endereço Telefone 1 Filipe Soares R. 16, 221 234-9888 2 Betina Romão R. da Ponte, 40 345-9099 3 Nelson Gomes Estr. Oeste, 40 233-9888 4 Marta Donato R. Guerra, 720 234-2322

Planejamento de Banco de Dados

Evitar dados redundantes

Tabela Aula

Tabela Treinamento

Código da Aula Aula Créditos

C1 Liderança 3

C2 Atendimento ao cliente 2 C3 Discurso Público 9

Código do

Funcionário Data Aula Passou? 1 01/01/2000 C1 Sim 2 03/10/1999 C2 Sim 3 10/11/2000 C2 Sim 4 10/10/2000 C3 Não

Referências

Documentos relacionados

Conclui-se que o conhecimento do desenvolvimento ponderal evidenciou um padrão racial, que o perímetro torácico está altamente associado ao peso corporal e que equações de

As principais indicações para a realização foram a suspeita de tuberculose (458 pacientes) e uso de imunobiológicos (380 pacientes).. A maior prevalência de resultado positivo

No caso de uma apresentação de Artigo em formato Áudio, o arquivo deverá ser enviado em CD por correio postal para:.. Comitê Editorial INFEIES - RM

Quando analisamos o peso molecular das bandas de proteínas urinárias verificamos que nas gestantes com manifestação de pré-eclâmpsia, isolada ou superposta à hipertensão

Este presente artigo é o resultado de um estudo de caso que buscou apresentar o surgimento da atividade turística dentro da favela de Paraisópolis, uma

b) Histórico Escolar do Ensino Médio que declare a conclusão do ensino médio ou de curso equivalente a esse nível de ensino (entregar cópia desse documento

A não uniformização quanto ao método de referência pode promover diferenças entre as curvas de calibração geradas por laboratórios de dosimetria citogenética, que podem

Esse foco teve de ser calibrado, considerando as características e os posicionamentos práticos e ideológicos que condicionam os rumos da educação e também o monopólio