Você está na página 1de 49

11/06/2014 1

Banco de Dados
Representa o arquivo fsico de dados,
armazenado em dispositivos perifricos,
para consulta e atualizao pelo usurio.
Possui uma srie de informaes
relacionadas a um determinado assunto.
2
11/06/2014
1. BASE DE DADOS
Coleo de dados logicamente relacionados,
Projetada e construda com dados para um
propsito especfico,
Concebida para atender a um grupo de usurios,
Representao de algum aspecto do mundo real,
Qualquer mudana na realidade, provocar
mudanas nesta base,
Possui alguma fonte de dados.
3
11/06/2014
SGBD
(Sistema de Gerenciamento de Base de Dados)
Software responsvel pelo gerenciamento dos dados no
Banco de Dados, que permite aos usurios:
Definir:
especificao de tipos de dados a serem armazenados.
Construir:
armazenamento dos dados em algum meio controlado
pelo SGBD.
Manipular:
utilizao de funes para consulta, recuperao de
dados e gerao de relatrios.
4
11/06/2014
2. CAPACIDADES DO SGBD
Eliminao de Redundncias
Dados comuns so compartilhados
Eliminao de Inconsistncias
Armazenamento num nico local com acesso descentralizado
Compartilhamento dos Dados
Utilizao simultnea e segura de um dado
Restries de Segurana
Para cada usurio o nvel de acesso
Padronizao dos Dados
Dados so padronizados segundo um determinado formato
Manuteno da Integridade
Impede que a chave da tabela no tenha correspondente em outra tabela
Fornecimento de backup
Cpias de segurana completas ou incrementais sempre que necessrio
5
11/06/2014
3. CONCEITOS IMPORTANTES
Campo
a menor unidade de informao existente
em um arquivo de banco de dados.
Cpf-Cliente Nome-Cliente Fone-Cliente
501170021-51 Joel Barros 3355-9001
422217090-24 Ilda Silva 3381-0003
493450021-69 Noel Lima 3354-0998
6
11/06/2014
3. CONCEITOS IMPORTANTES
Registro
Conjunto de campos.
Entidade que identifica entrada nica num
banco de dados.
Cpf-Cliente Nome-Cliente Fone-Cliente
501170021-51 Joel Barros 3355-9001
422217090-24 Ilda Silva 3381-0003
493450021-69 Noel Lima 3354-0998
7
11/06/2014
3. CONCEITOS IMPORTANTES
Chave
Uma chave permite a distino dos registros de uma
tabela.
Pode ser formada por um campo ou um conjunto de
campo (chaves compostas).
Cpf-Cliente Nome-Cliente Fone-Cliente
501170021-51 Joel Barros 3355-9001
422217090-24 Ilda Silva 3381-0003
493450021-69 Noel Lima 3354-0998
8
11/06/2014
3. CONCEITOS IMPORTANTES
Tabelas
Representam as estruturas de armazenamento
de dados dos sistemas.
Formada por um conjunto de campos e registros.
Ex: tabela dos clientes
tabela dos fornecedores
tabela dos produtos
9
11/06/2014
3. CONCEITOS IMPORTANTES
Cdigo-Prod Nome-Prod Preo-Prod
51 Martelo de Borracha R$ 8,45
54 Chave de Fenda Pequena R$ 2,50
59 Alicate de Ao R$ 9,00
Tabela no modo Folha de Dados
Tabela no modo Estrutura
Nome do Campo Tipo de Dado Descrio
Cdigo-Prod Nmero Digite o cdigo do produto
Nome-Prod Texto Digite o nome do produto
Preo-Prod Moeda Digite o preo do produto
Chave
10
11/06/2014
3. CONCEITOS IMPORTANTES
Dado
o valor do campo quando armazenado no
Banco de Dados.
Ex. O valor do campo "nome do cliente" para
quem est entrando com os dados.
Cpf-Cliente Nome-Cliente Fone-Cliente
501170021-51 Joel Barros 3355-9001
422217090-24 Ilda Silva 3381-0003
493450021-69 Noel Lima 3354-0998
11
11/06/2014
3. CONCEITOS IMPORTANTES
Informao
o valor que este campo representa para
as atividades da empresa.
Ex. Resposta a uma consulta: Qual os
nomes dos clientes do Rio de Janeiro?
Dado Processamento Informao
12
11/06/2014
4. TIPOS DE DADOS
Texto
Armazena caracteres alfanumricos
(texto e nmero).
o tipo indicado para armazenar
informaes que no requerem clculo.
Ex: nome de pessoas ou endereos.
Cpf, Tel e Cep se tiver / , ( ) , -
13
11/06/2014
4. TIPOS DE DADOS
Memorando
Armazena caracteres, no entanto, ele
utilizado para aguardar grandes blocos de
texto que so divididos em pargrafos.
Cpf-Cliente Nome-Cliente Observao-Cliente
501170021-51 Joel Barros Entregou a fita de vdeo sem rebobinar aps assistir o
filme
422217090-24 Ilda Silva No devolveu a fita de vdeo at o dia de hoje, apesar de
vrios contatos telefnicos
493450021-69 Noel Lima Nenhuma
14
11/06/2014
4. TIPOS DE DADOS
Nmero
Armazena valores numricos inteiros ou
fracionrios.
Este tipo dever ser escolhido como padro
quando desejarmos efetuar clculos com os
campos.
Cdigo-Produto Nome-Produto Quantidade-Produto
NA 45 Biscoito de Polvilho 15
LE 24 Torradas 33
MC 69 Bolo Ingls 54
15
11/06/2014
4. TIPOS DE DADOS
Data/Hora
Faz com que o banco de dados trate os
caracteres como datas ou horas, dependendo
da forma como sero digitados.
Cpf-Cliente Nome-Cliente Data-Nascimento
501170021-51 Joel Barros 30/12/1963
422217090-24 Ilda Silva 08/10/1967
493450021-69 Noel Lima 22/07/1971
16
11/06/2014
4. TIPOS DE DADOS
Unidade Monetria
O tipo de dados Moeda tem todas
caractersticas de um dado do tipo numrico,
porm com acrscimo do smbolo monetrio.
Cdigo-Produto Nome-Produto Preo-Produto
NA 45 Biscoito de Polvilho R$ 2,50
LE 24 Torradas R$ 3,00
MC 69 Bolo Ingls R$ 5,20
17
11/06/2014
4. TIPOS DE DADOS
Numerao Automtica
Utilizado para contagem de registros. A cada
registro inserido na tabela ele
automaticamente incrementado em um valor.
Nmero-Pedido Nome-Produto Quantidade-Produto
1 Biscoito de Polvilho 15
2 Torradas 33
3 Bolo Ingls 54
18
11/06/2014
4. TIPOS DE DADOS
Sim/No
Permite a entrada de valores dos tipos:
Sim ou No, Verdadeiro ou Falso, Certo ou Errado.
Cpf-Cliente Nome-Cliente Pagamento-Pendente
501170021-51 Joel Barros
422217090-24 Ilda Silva
493450021-69 Noel Lima
19
11/06/2014
4. TIPOS DE DADOS
Objeto OLE
Esse tipo de dado uma
grande vantagem do
ambiente grfico
Windows, pois voc pode
definir que o dado seja
uma imagem grfica.

Ex: associar ficha dos
funcionrios uma foto do
mesmo.
Cpf-Cliente Nome-Cliente Foto-Cliente
501170021-51 Joel Barros
422217090-24 Ilda Silva
493450021-69 Noel Lima
20
11/06/2014
4. TIPOS DE DADOS
Hyperlink
um tipo de campo que ir armazenar um texto que
permite saltar para um arquivo, um local em um arquivo,
uma pgina HTML na Web.
Exemplo: http://fp13vs23.digiweb.com
jsn@ig.com.br

Cpf-Cliente Nome-Cliente Email-Cliente
501170021-51 Joel Barros jb@aol.com.br
422217090-24 Ilda Silva isil@terra.com.br
493450021-69 Noel Lima noli@uol.com.br
21
11/06/2014
4. TIPOS DE DADOS
Assistente de pesquisa
Cria um campo que permite que voc escolha um valor
a partir de uma tabela ou de uma lista de valores,
utilizando uma caixa de combinao.
Cpf-Cliente Nome-Cliente Sexo-Cliente
501170021-51 Joel Barros Masc
422217090-24 Ilda Silva Fem
493450021-69 Noel Lima
Masc
Fem
22
11/06/2014
Exemplo de Pedido de Material
- Nmero do Pedido e Cdigo do tipo so preenchidos pelo programa
- Sexo do Cliente e Nome do Tipo so preenchidos com caixa de combinao
- Data do Pedido e Preo do Material podem ser usados em clculos
- E-mail do Cliente ao ser clicado com mouse abre o Outlook para mensagem
24
11/06/2014
5. RELACIONAMENTO ENTRE TABELAS
As tabelas se relacionam atravs das chaves
principais e secundrias.
As chaves secundrias so aquelas que so
principais em uma tabela e so colocadas em
outra tabela para que haja um relacionamento.
Os nomes da tabela so escritos em maisculo.
As chaves principais esto com sublinhado
simples e/ou em negrito.
25
11/06/2014
5. RELACIONAMENTO ENTRE TABELAS
Suponhamos que ns tenhamos as
seguintes tabelas: Cliente e Pedido

TAB-CLIENTE TAB-PEDIDO
Cpf-Cliente Nmero-Pedido
Nome-Cliente Data-Pedido
Fone-Cliente Situao-Pedido
Cep-Cliente
26
11/06/2014
5. RELACIONAMENTO ENTRE TABELAS
Para que uma tabela se relacione com a outra, necessrio que a chave
principal de uma esteja no outra tabela, como chave secundria.

TAB-CLIENTE TAB-PEDIDO
Cpf-Cliente Nmero-Pedido
Nome-Cliente Data-Pedido
Fone-Cliente Situao-Pedido
Cep-Cliente Cpf-Cliente


A chave estrangeira est representada pelo sublinhado duplo.
As duas tabelas esto relacionadas pelo campo Cpf-Cliente.
27
11/06/2014
6. CARDINALIDADES
As cardinalidades so representadas por
1 ou N.
A chave principal fica com a cardinalidade
1, enquanto que a chave secundria fica
com a cardinalidade N.
28
11/06/2014
6. CARDINALIDADES
Se um cliente pode fazer vrios pedidos e cada pedido
s pode ser feito por um certo cliente, ento a
cardinalidade no exemplo acima passa a ser o seguinte:

TAB-CLIENTE TAB-PEDIDO
Cpf-Cliente Nmero-Pedido
Nome-Cliente Data-Pedido
Fone-Cliente Situao-Pedido
Cep-Cliente Cpf-Cliente
1
N
29
11/06/2014
6. CARDINALIDADES
Se fosse colocada a chave principal da TAB-
PEDIDO (Nmero-Pedido) na TAB-CLIENTE
como chave estrangeira, a situao absurda seria
a seguinte:
Cada cliente s poderia fazer um nico pedido.
Cada pedido poderia ser feito por vrios clientes.
11/06/2014 30
Modelagem de Dados
Consiste em mapear o mundo real do sistema em um modelo que ir
representar a realidade e o relacionamento existente entre os dados.
Identifica entidades de dados e seus relacionamentos.
um modelo de dados cujos conceitos foram projetados para estar o
mais prximo possvel da viso que o usurio tem dos dados.

31
11/06/2014
1. TABELA
Objeto ou evento bsico do mundo real,
concreto ou abstrato, que possui
existncia independente, distintamente
identificado e tratado como uma categoria
definida, acerca da qual armazenamos
dados.
TAB-CLIENTE
32
11/06/2014
1. TABELA
So Tabelas:
Ente fsico ou Jurdico (Funcionrio, Cliente, Aluno, etc.);
Documento (Nota Fiscal, Ordem de Servio, etc.);
Local (Departamento, Unidade, etc.);
Histrico (Histrico Escolar, Vendas Acumuladas, etc.);
Material (Matria-prima, Produto, etc.).

No so Tabelas:
Entidade com apenas 1 elemento;
Operaes do sistema;
Cargos de direo.
33
11/06/2014
Tabelas Cadastro e Movimento

TAB-MOTORISTA TAB-DISTRIBUIO TAB-NIBUS
Cpf-Motor Cpf-Motor Chassi-nibus
Nome-Motor Chassi-nibus Placa-nibus
Fone-Motor Data-Distribuio Data-Fabricao
Cnh-Motor Odmetro-Sada Modelo-nibus
Hora-Sada
Odmetro-Chegada
Hora-Chegada
Observao
1 N N 1
Tabela Cadastro
Tabela Movimento
34
11/06/2014
2. CAMPOS
Dados elementares que, em conjunto, permitem descrever
a tabela ou o relacionamento.

Simples: so aqueles que possuem uma nica opo.
Ex: Identidade.
Determinante: garante a unicidade de cada ocorrncia.
Ex: Matrcula.
Composto: pode ser dividido em outros atributos.
Ex: Endereo (Rua + Nmero + Bairro + Cidade).
Multi-valorado: aquele que pode ter mais de uma opo.
Ex: Telefone - cada um pode ter mais de um telefone.
35
11/06/2014
3. CHAVE OU IDENTIFICADOR
o atributo contido na tabela que a personaliza e individualiza.

Chave Primria
o atributo ou grupamento de atributos cujo valor identifica
unicamente uma tupla dentre todas as outras de uma identidade.

Chave Candidata
o atributo ou grupamento de atributos que tem a propriedade de
identificao nica. Pode vir a ser a chave primria.

Chave Estrangeira
Atributo de uma entidade que a chave primria de outra entidade.

Chave Composta ou Concatenada
formada pelo grupamento de mais de um atributo.
36
11/06/2014
4. RELACIONAMENTO
a associao, com um significado, entre duas ou mais entidades.

Exemplo: O Joo est trabalhando no Aprovisionamento.

Joo - Campo Nome do funcionrio da Tabela Funcionrio;

Aprovisionamento - Campo Nome do Setor da Tabela Setor;

Trabalhando - Ligao existente entre um Funcionrio e um Setor.

TAB-FUNCIONRIO

TAB-SETOR
Trabalha
37
11/06/2014
4. RELACIONAMENTO
Relacionamento 1:1
Francisco casado com a Maria.
Casado - Ligao entre um Homem e uma
Mulher, sendo que um homem pode ser casado
com uma e apenas uma mulher, assim como,
uma mulher pode ser casada com um e apenas
um homem.

TAB-HOMEM

TAB-MULHER
Casado
1
1
38
11/06/2014
4. RELACIONAMENTO
Relacionamento 1:N ou N:1
Pedro trabalha no Departamento de Pessoal.
Trabalha - Ligao entre um Funcionrio e um
Departamento, onde um funcionrio pode
trabalhar em um e somente um departamento e
um departamento pode ter vrios funcionrios.

TAB-DEPARTAMENTO
Trabalha

TAB-EMPREGADO
1 N
39
11/06/2014
4. RELACIONAMENTO
Relacionamento N : N
Antnio est matriculado na disciplina Portugus.
Matriculado - Ligao existente entre um Aluno e
uma Disciplina, onde um aluno pode estar
matriculado em vrias disciplinas e cada disciplina
pode ter vrios alunos matriculados.
Normalmente existe campo no relacionamento.

TAB-ALUNOS

TAB-DISCIPLINA
Matriculado
N
N
Dia
Hora
40
11/06/2014
4. RELACIONAMENTO
Dado um modelo completo, devemos montar um
esquema onde aparecem todas as tabelas, com
seus campos e chaves.
A chave principal deve receber sublinhado simples
e a chave secundria um duplo.
Vamos estudar os seguintes casos:
1 para N , N para 1 e N para N
O 1 para 1 s usado quando dividimos uma
tabela em duas e temos a mesma chave principal.
41
11/06/2014
4. RELACIONAMENTO
Vamos estudar os 3 exemplos atravs das
seguintes tabelas abaixo:

TAB-PRODUTO TAB-FORNECEDOR
Cdigo-Prod Cnpj-Fornec
Descrio-Prod Nome-Fornec

Dependendo da situao, o campo Preo-Prod fica em
tabelas diferentes
42
11/06/2014
ESQUEMA DE TABELAS
Caso 1: cada produto s distribudo por um
nico fornecedor, que por sua vez pode distribuir
vrios produtos.

TAB-FORNECEDOR (Cnpj-Fornec , Nome-Fornec)

TAB-PRODUTO (Cdigo-Prod , Descrio-Prod , Preo-Prod,
Cnpj-Fornec)
As 2 tabelas esto relacionadas pelo campo Cnpj-Fornec .
43
11/06/2014
LAYOUT DE RELACIONAMENTOS
Caso 1: cada produto s distribudo por um
nico fornecedor, que por sua vez pode
distribuir vrios produtos.
TAB-PRODUTO TAB-FORNECEDOR
Cdigo-Prod Cnpj-Fornec
Descrio-Prod Nome-Fornec
Preo-Prod
Cnpj-Fornec
1
N
As 2 tabelas esto relacionadas pelo campo Cnpj-Fornec .
44
11/06/2014
ESQUEMA DE TABELAS
Caso 2: cada produto distribudo por vrios
fornecedores, que por sua vez s distribuem
apenas 1 produto.

TAB-FORNECEDOR (Cnpj-Fornec , Nome-Fornec , Preo-
Fornec , Cdigo-Prod)

TAB-PRODUTO (Cdigo-Prod , Descrio-Prod)


As 2 tabelas esto relacionadas pelo campo Cdigo-Prod .
45
11/06/2014
Caso 2: cada produto distribudo por vrios
fornecedores, que por sua vez s distribuem
apenas 1 produto.
TAB-PRODUTO TAB-FORNECEDOR
Cdigo-Prod Cnpj-Fornec
Descrio-Prod Nome-Fornec
Preo-Fornec
Cdigo-Prod

1
N
As 2 tabelas esto relacionadas pelo campo Cdigo-Prod .
LAYOUT DE RELACIONAMENTOS
46
11/06/2014
ESQUEMA DE TABELAS
Caso 3: cada produto distribudo por
vrios fornecedores, que podem distribuir
vrios produtos.

TAB-FORNECEDOR (Cnpj-Fornec , Nome-Fornec)

TAB-DISTRIBUIO (Cnpj-Fornec , Cdigo-Prod , Preo-Fornec-Prod)

TAB-PRODUTO (Cdigo-Prod , Descrio-Prod)

A TAB-PRODUTOS est relacionada com a TAB-DISTRIBUIO pelo campo Cdigo-Prod
A TAB-DISTRIBUIO est relacionada com a TAB-FORNECEDOR pelo campo Cnpj-Fornec
47
11/06/2014
Caso 3: cada produto distribudo por vrios
fornecedores, que podem distribuir vrios
produtos.

TAB-PRODUTOS TAB-DISTRIBUIO TAB_FORNECEDOR

Cdigo-Prod Cdigo-Prod Cnpj-Fornec
Descrio-Prod Cnpj-Fornec Nome-Fornec
Preo-Fornec-Prod
1 N
N
1
A TAB-PRODUTOS est relacionada com a TAB-DISTRIBUIO pelo campo Cdigo-Prod
A TAB-DISTRIBUIO est relacionada com a TAB-FORNECEDOR pelo campo Cnpj-Fornec
LAYOUT DE RELACIONAMENTOS
48
11/06/2014
5. MINI MUNDO
Descrio formal da realidade a ser representada.

Exemplo: suponhamos que a AEDB funcione assim:

Cada aluno pertence a um curso, que por sua vez pode ter
vrios alunos. O curso armazenado por um cdigo nico e
pelo seu nome. Os alunos so cadastrados pela matrcula,
nome e endereo. No existem 2 alunos com a mesma
matrcula. Cada curso possui algumas disciplinas que so
identificadas por um controle nico e pela sua descrio. A
mesma disciplina pode ser lecionada em outros cursos em
dias diferentes. Cada professor pode ministrar mais de uma
disciplina, mas cada disciplina s pode ser lecionada por
um nico professor. CPF, nome e telefone so os atributos
de cada professor.
49
11/06/2014
Resposta: Layout de Relacionamentos
TAB-ALUNO TAB-CURSO TAB-AULAS
Matrcula-Aluno Cdigo-Curso Cdigo-Curso
Nome-Aluno Descrio-Curso Controle-Disciplina
Rua-Aluno Dias-Aula-Disciplina
Bairro-Aluno
Cep-Aluno TAB-DISCIPLINA
Cdigo-Curso Controle-Disciplina TAB-PROFESSOR
Descrio-Disciplina Cpf-Professor
Cpf-Professor Nome-professor
Tel-Professor
N
1 1 N
N
1
1
N
50
11/06/2014
Resposta: Esquema de Tabelas
TAB-ALUNO (Matrcula-Aluno , Nome-Aluno , Rua-Aluno , Bairro-Aluno ,
Cep-Aluno , Cdigo-Curso)

TAB-CURSO (Cdigo-Curso , Descrio-Curso)

TAB-AULAS (Cdigo-Curso , Controle-Disciplina , Dias-Aula-Disciplina)

TAB-DISCIPLINA (Controle-Disciplina , Descrio-Disciplina , Cpf-Professor)

TAB-PROFESSOR (Cpf-Professor , Nome-Professor , Tel-Professor)
FIM