Post on 11-Feb-2018
7/23/2019 ATPS Sistemas de Banco de Dados
1/24
UNIVERSIDADE ANHANGUERA
Jhonata Eloi Pinheiro
Jonatas Vasconcelos
Luiz Felipe
Marcelino Gomes De Andrade
Rafael Souza Bessa da Paixo
Valdivio Amorim Lima
William Goveia
RA: 3715647859
RA: 4200078791
RA: 4234821843
RA: 3748690793
RA: 3729688450
RA: 6817453090
RA: 3726700556
ATIVIDADE PRTICAS SUPERVISIONADAS
(Sistemas de Informao e TADS)
Sistemas de Banco de Dados
Prof.: Gilberto Gaspar
So Paulo
2012
7/23/2019 ATPS Sistemas de Banco de Dados
2/24
ETAPA 01 - Passo 2
Sistema de Banco de Dados X Sistema de Arquivos
Antes da criano de SGBDs as aplicaes utilizavam sistemas de arquivos do prprio Sistema
Operacional. As aplicaes armazenavam seus dados atravs das interaes com a aplicao e com
os arquivos. Sendo armazenados em diversos arquivos, precisando de diferentes programas de
aplicaes para extrair e acrescentar registros, elevando os custos destas aplicaes.
Dados e Meta-dados na baseOs dados e a descrio correspondente so armazenadas na base e gerenciadas pelo SGBD.
Independncia de Dados - ProgramasModificaes como incluso de um novo campo no afetam os programas.
Abstrao de DadosRepresentao conceitual atravs de um modelo de dados que s usa conceitos lgicos.
Mltiplas VisesSo vises, de como os usurios veem o banco de dados;
- Cada um v o banco de dados ao seu modo. Representam a abstrao de mais alto nvel da
arquitetura; Construdos de forma que sejam removidos os conflitos entre duas ou mais vises.
7/23/2019 ATPS Sistemas de Banco de Dados
3/24
Sistema de Banco de Dados
Vantagens Desvantagens
Os Dados podem ser compartilhadosOs sistemas de banco de dados so complexos,
difceis e demorados para projetar.
As redundncias podem ser reduzidas Elevados custos inicias de hardware e software
Inconsistncia pode ser vista at certo ponto
Danos ao banco de dados afetam virtualmente a
todos os programas
Suporte a transao pode ser fornecidoElevados custos para a converso de sistemas
baseados em arquivos para banco de dados
Integridade pode ser mantida
Treinamento inicial aos programadores e
usurios
Segurana reforada
Requisitos contraditrios podem ser
equilibrados
Padres poder ser reforados
7/23/2019 ATPS Sistemas de Banco de Dados
4/24
Sistemas de Arquivos
Vantagens Desvantagens
padro aberto, no sendo preciso pagar por
nenhum software;
Problemas de Integridade;
Existem varias ferramentas e editores bons no
mercado;
A redundncia pode afetar a eficincia para
armazenamento, afetando a transmisso e
processamento, elevando os custos;
Simplicidade e legibilidade, tanto para usurios
como para computadores;
Redundncia e inconsistncia dos dados;
Separao do Contedo Para Formatao; Dificuldade no acesso aos dados;
Possibilidade de criar sua prpria sintaxe de
dados;
Isolamento dos dados;
Possui suporte a Unicode; Anomalias de acesso concorrente;
Permite validao, o que torna os testes mais
efetivos, e a construo de aplicaes bem mais
fceis.
Problemas de segurana.
7/23/2019 ATPS Sistemas de Banco de Dados
5/24
Passo 3
1-
Modelagem de Dados representa um conjunto de requerimentos de informaes de negcio,
uma parte importante do desenho de um sistema de informao.
Entre os principais objetivos da modelagem de dados temos a representao do ambiente
observado, documentao e normalizao, fornecimento de processos de validao e observao
dos processos de relacionamento entre objetos.
As etapas envolvidas na construo de um modelo podem ser divididas em 3 modelos:
Conceitual, lgico e fsico.
2-
A modelagem de dados normalmente atende a trs perspectivas: Modelagem Conceitual,
Modelagem Lgica e a Modelagem Fsica. A modelagem conceitual usada como representao de
alto nvel e considera exclusivamente o ponto de vista do usurio criador do dado, dentre os
sistemas utilizados para facilitar o desenvolvimento desta etapa podemos citar o Visio e o DB
Designer. A modelagem lgica j leva em conta algumas limitaes e implementa recursos como
adequao de padro e nomenclatura, para este os sistemas utilizados podem ser os mesmos da
modelagem conceitual. A modelagem fsica demonstra como os dados so fisicamente
armazenados, levam-se em conta as limitaes impostas pelo SGBD escolhido e deve ser criadosempre com base nos exemplos de modelagem de dados produzidos no modelo lgico, um exemplo
de SGBD utilizado nesta etapa o SQL Server.
7/23/2019 ATPS Sistemas de Banco de Dados
6/24
3-
Modelo lgico, pois, a primeira etapa j foi concluda com a definio das entidades e no
momento no necessrio visar qual SGBD ser utilizado.
A necessidade atual definir as chaves primrias, estrangeiras e seus respectivos
relacionamentos, assim como o tipo de cada atributo, como exemplo ser necessrio haver um
relacionamento entre a entidade estacionamento e a entidade vaga, pois, no mesmo estacionamento
existem varias vagas.
4-
Esquema a definio das estruturas que compem o banco de dados, espera-se que o
esquema ir sobrar nenhuma ou poucas alteraes depois de implementado, o esquema independe
dos dados a serem armazenados, como por exemplo, podemos citar a entidade estacionamento e
seus respectivos atributos, podendo haver relacionamento com outra entidade.
Instancia a materializao do banco de dados composto pelas estruturas mais os dados
armazenados, um retrato do banco de dados em um determinado momento, podemos ter a
mesma estrutura reaplicada em vrios locais, cada uma com seu conjunto de dados, como exemplo
podemos supor que j existem dados armazenados na entidade vaga, em determinado momento o
estacionamento conter tais vagas preenchidas.
7/23/2019 ATPS Sistemas de Banco de Dados
7/24
Passo 4Relatrio 01
At o presente momento, foram desenvolvidas atividades relacionadas a sondagem de como
desenvolver a base para o desenvolvimento do banco de dados, tendo conhecimento do que se faz
melhor para a Empresa LFLXZ Ltda, procuro apresentar de forma clara e objetiva, do que j fora
desenvolvido, bem como exemplificar, e diferenciar as diversas formas de se montar o Servidor de
Banco de Dados. Procurando o melhor desempenho e praticidade, nesse caso afirmo que o melhor
para a empresa um sistema de banco de dados, pela praticidade de gerar relatrios, modificar e
atualizar. Apresentando a vocs, todas as vantagens e desvantagens para o desenvolvimento deste
projeto, junto a este relatrio, ser enviado, parte de meu estudo de caso, para a melhor
compreenso, suas definies e exemplificaes. J apresentado meu relatrio e todos os
levantamentos para a confeco da base de banco de dados, irei agora mais adiante, criando
modelos de entidades - relacionamento, mostrando graficamente todos os processos por mim
desenvolvidos.
7/23/2019 ATPS Sistemas de Banco de Dados
8/24
ETAPA 02Passo 1
Passo 2
1-
Entidade - O objeto do universo de interesse do Banco de Dados, cujas caractersticas se deseja
armazenar. Pode ser definida como qualquer coisa do Mundo real, abstrata ou concreta, na qual se
deseja guardar informaes. Exemplos
de entidades: Cliente, Produto, Contrato, Vendas, etc.
Atributos - Caractersticas das entidades, Eeemplos de atributos: Cdigo do Produto (Entidade
Produto), Nome do Cliente (Entidade Cliente).
7/23/2019 ATPS Sistemas de Banco de Dados
9/24
Atributo Chave - Atributo nico para a entidade.
Atributo Composto - Atributos com tipos de dados diferentes
Linhas Ligam atributos a conjuntos de entidades e conjuntos de entidades a relacionamentos.
Alguns autores chamam as linhas de arestas, em analogia s teorias de grafos e redes.
2-
7/23/2019 ATPS Sistemas de Banco de Dados
10/24
Passo 3 - DER (Diagrama EntidadeRelacionamento)
Passo 4Relatrio 2
Na etapa anterior foi desenvolvida a parte conceitual e uma breve introduo do que seria
desenvolvido para o SGBD da Empresa LFLXZ Ltda. Como foi detalhado no relatrio anterior.
Nesta etapa, criei um quadro de cada entidade proposta, identificando todos os seus atributos e seus
devidos tipos, chaves e relacionamentos. Representando graficamente os Modelos de Entidades
Relacionais, identificando as entidades propostas e a simbologia de cada figura atribuda.
Apresentamos tambm, os relacionamentos existentes entre as entidades levantando sua
cardinalidade (1:1, 1:N, N:M), seu grau de relacionamento, justificando seus relacionamentos,
apresentando o conceito de relacionamento e cardinalidade.
Desenvolvi a partir da um Diagrama de Entidade e Relacionamento, completo (Entidade,
Atributos, Chaves, Relacionamento, Cardinalidade, Smbolos, dentre outros), partindo da entidade
proposta no programa e das atividades desenvolvidas anteriormente.
7/23/2019 ATPS Sistemas de Banco de Dados
11/24
ETAPA 03 - Passo 1
O Modelo Relacional
A arquitetura de um banco de dados relacional pode ser descrita de maneira informal ou formal. Na
descrio informal estamos preocupados com aspectos prticos da utilizao e usamos os termos
tabela, linha e coluna. Na descrio formal estamos preocupados com a semntica formal do
modelo e usamos termos como relao (tabela), tupla (linhas) e atributo (coluna).
Tabelas (ou relaes, ou entidades)
Todos os dados de um banco de dados relacional (BDR) so armazenados em tabelas. Uma tabela
uma simples estrutura de linhas e colunas. Em uma tabela, cada linha contm um mesmo conjunto
de colunas. Em um banco de dados podem existir uma ou centenas de tabelas, sendo que o limite
pode ser imposto tanto pela ferramenta de software utilizada,quantos pelos recursos de hardware
disponveis no equipamento. As tabelas associam-se entre si atravs de regras de relacionamentos,
estas regras consistem em associar um ou vrios atributo de uma tabela com um ou vrios atributos
de outra tabela.
Exemplo: A tabela cadastro relaciona-se com a tabela vaga no estacionamento. Atravs desterelacionamento esta ltima tabela fornece a lista de vagas para a tabela cadastro.
7/23/2019 ATPS Sistemas de Banco de Dados
12/24
Registros (ou tuplas)
Cada linha formada por uma lista ordenada de colunas representa um registro, ou tupla. Os registros
no precisam conter informaes em todas as colunas, podendo assumir valores nulos quando assim
se fizer necessrio. Resumidamente, um registro uma instncia de uma tabela, ou entidade.
Exemplo: O Cliente cpf_proprietario uma instncia (registro) da tabela cadastro, e anro_vaga
a instncia (registro) da tabela vaga do Estacionamento. Uma associao entre estas duas tabelas
criaria a seguinte instncia de relacionamento: cpf_proprietario o nro_vaga, onde o verbo ser
representa uma ligao entre os registros distintos.
Colunas (tribunas)
As colunas de uma tabela so tambm chamadas de Atributos. Ao conjunto de valores que um
atributo pode assumir chama-se domnio. Por exemplo: em um campo do tipo numrico,sero
somente armazenados nmeros, etc. O conceito mais similar a domnio o de tipo abstrato de dados
em linguagens de programao, ou seja, so meta-dados (dados acerca de dados).
Exemplo: cpf_proprietario, ano_veiculo, placa_veiculo, nro_ficha, telefone(s),nro_ficha, nro_vaga.
Chave
As tabelas relacionam-se umas as outras atravs de chaves. Uma chave um conjunto de um ou
mais atributos que determinam a unicidade de cada registro.
Por exemplo, se um banco de dados tem como chaves Nro_vaga e Nro_ficha, sempre que acontecer
uma insero de dados o sistema de gerenciamento de banco de dados ir fazer uma consulta para
7/23/2019 ATPS Sistemas de Banco de Dados
13/24
identificar se o registro j no se encontra gravado na tabela. Neste caso,um novo registro no ser
criado, resultando esta operao apenas da alterao do registro existente. A unicidade dos registros,
determinada por sua chave, tambm fundamental para a criao dos ndices. Temos dois tipos de
chaves:
1. Chave Primria: (PK - Primary Key) a chave que identifica cada registro dando-lheunicidade. A chave primria nunca se repetir.
2. Chave Secundria: (FK - Foreign Key) a chave formada atravs de um relacionamentocom a chave primria de outra tabela. Define um relacionamento entre as tabelas e podem
ocorrer repetidas vezes. Caso a chave primria seja composta na origem, a chave
estrangeira tambm o ser.
Passo 2
Grandes partes das extenses aproximaram o MER do modelo Orientado Objeto, no sendo muito
utilizados, pois os SGBDs Relacionais no suportam diretamente extenses, ento se faz
necessrio antes de implementar mapear estas extenses para o MER original. Uma limitao do
modelo E-R que no possvel expressar relacionamentos entre relacionamentos. A agregao
uma abstrao atravs das quais relacionamentos so tratados como entidades de nvel superior.
7/23/2019 ATPS Sistemas de Banco de Dados
14/24
Usando agregao:
Passo 3
Modelo DER
7/23/2019 ATPS Sistemas de Banco de Dados
15/24
Modelo Relacional
Passo 4Relatrio 3
Como em relatrios anteriores, se fazendo em comum todo o assunto tratado, foram
importantes para desenvolver alguns conceitos, neste, no se fazendo diferente, pois foram
desenvolvidos conceitos de Modelo Relacional, sendo aplicados e demonstrados na forma de
representao grfica de um banco de dados. Sendo assim mapeados os Modelos DER e Relacional.
Descrevendo todos os itens que os compem, na forma de uma estrutura Relacional,
apontando funes e as relacionando com as entidades propostas no projeto. Descrevendo
limitaes existentes na execuo do processo de Mapeamento do modelo MER para o Relacional.
Criando representaes grficas e demonstrando converses do DER em Modelo Relacional
e assim vice-versa, descrevendo tais processos passo a passo. Apresentando sempre o ponto de vista
na facilidade de compreenso da modelagem e estrutura funcional como um todo.
7/23/2019 ATPS Sistemas de Banco de Dados
16/24
Etapa 4Passo 1
Normalizao de dados o processo formal passo a passo que examina os atributos de uma
entidade, com o objetivo de evitar anomalias observadas na incluso, excluso e alterao de
registros.
Uma regra que devemos observar quando do projeto de um Banco de Dados baseado no
Modelo Relacional de Dados a de "no misturar assuntos em uma mesma Tabela". Por exemplo:
na Tabela Cadastro devemos colocar somente campos relacionados com o assunto de cadastro do
cliente. No devemos misturar campos relacionados com outros assuntos. Essa "Mistura de
Assuntos" em uma mesma tabela acaba por gerar repetio desnecessria dos dados bem como
inconsistncia dos dados.
Normalmente aps a aplicao das regras de normalizao de dados, algumas tabelas
acabam sendo divididas em duas ou mais tabelas, o que no final gera um nmero maior de tabelas
do que o originalmente existente. Este processo causa a simplificao dos atributos de uma tabela,
colaborando significativamente para a estabilidade do modelo de dados, reduzindo-se
consideravelmente as necessidades de manuteno.
Objetivos
Minimizao de redundncias e inconsistncias;
Facilidade de manipulaes do banco de dados; Facilidade de manuteno do sistema de Informao.
Uma relao estar na 1 forma normal 1FN, se e somente se todos os domnios bsicos contiverem
somente valores atmicos (no contiver grupos repetitivos).Em outras palavras podemos definir que
7/23/2019 ATPS Sistemas de Banco de Dados
17/24
a 1 forma normal no admite repeties ou campos que tenha mais que um valor. Considere a
tabela cadastro abaixo:
Cadastro:
nro_ficha; nome_proprietario; telefone; endereo
Agora a tabela com os dados:
Nro_ficha Nome_proprietario Telefone Endereo
0001 Jos 99999-0099 Rua Marechal, 1800 So Bernardo 12345-567
0002 Maria 98888-0088
4121-2112
Rua Oliveira, 32 Santo Andr 09700-000
0003 Joo 97000-6512
4234-2020
Avenida da Paz, 1000 So Caetano 20201-200
Tabela desnormalizada, ou seja, no est na 1 forma normal.
Analisando teremos:
Todos os clientes possuem Rua, CEP e Bairro, e essas informaes esto na mesma clula da tabela,
logo ela no est na 1 forma normal. Para normalizar, deveremos colocar cada informao em uma
coluna diferente, como no exemplo a seguir:
7/23/2019 ATPS Sistemas de Banco de Dados
18/24
Nro_ficha Nome_proprietario Telefone Rua Cidade CEP
0001 Jos 99999-0099 Rua Marechal,
1800
So Bernardo 12345-567
0002 Maria 98888-0088
4121-2112
Rua Oliveira,32 Santo Andr 09700-000
0003 Joo 97000-6512
4234-2020
Avenida da Paz,
1000
So Caetano 20201-200
Tabela ainda no est na 1 forma normal
Mesmo com o ajuste acima, a tabela ainda no est na primeira forma normal, pois h
clientes com mais de um telefone e os valores esto em uma mesma clula. Para normalizar ser
necessrio criar uma nova tabela para armazenar os nmeros dos telefones e o campo-chave da
tabela cliente. Veja o resultado a seguir:
Nro_ficha Nome_proprietario Rua Cidade CEP
0001 Jos Rua Marechal,
1800
So Bernardo 12345-567
0002 Maria Rua Oliveira,32 Santo Andr 09700-000
0003 Joo Avenida da Paz,
1000
So Caetano 20201-200
Tabela na 1 forma normal
7/23/2019 ATPS Sistemas de Banco de Dados
19/24
Nro_ficha CEP
0001 12345-567
0002 09700-000
0003 20201-200
Tabela na 1 forma normal
No exemplo acima foi gerado uma segunda entidade para que a primeira forma normal fosse
satisfeita, contudo possvel manter a tabela original, admitindo-se valores duplo sem uma mesma
coluna, como exemplo o campo telefone ficaria assim: 11-5432-5678 e 11-3500-3500. Neste caso a
tabela ficaria desnormalizada, mas muitos acabam preferindo assim, principalmente quando h
poucos casos de repetio.
Passo 2
1-
Uma tabela est na 2 Forma Normal 2FN se ela estiver na 1FN e todos os atributos no
chave forem totalmente dependentes da chave primria (dependente de toda a chave e no apenas
de parte dela).
Se o nome do produto j existe na tabela produtos, ento no necessrio que ele exista na
tabela de produtos. A segunda forma normal trata destas anomalias e evita que valores fiquem em
redundncia no banco de dados.
7/23/2019 ATPS Sistemas de Banco de Dados
20/24
Procedimentos:
a) Identificar os atributos que no so funcionalmente dependentes de toda a chave primria;
b) Remover da entidade todos esses atributos identificados e criar uma nova entidade com eles.
A chave primria da nova entidade ser o atributo do qual os atributos do qual os atributos
removidos so funcionalmente dependentes.
Exemplo de segunda forma normal
Considere a tabela vendas abaixo:
Estacionamento
Nro_ficha, Cdigo_vaga, Vaga, Quant, Valor_unit, Subtotal
Agora a tabela com os dados:
Nro_ficha Cdigo_vaga Vaga Quant Valor_unit Subtotal
0005 101 Executivo 5 300,00 1500,00
0006 102 Funcionrio 3 150,00 450,00
0007 103 Visitante 1 200,00 200,00
0008 104 Avulso 15 50,00 750,00
Tabela no est na 2 forma normal
7/23/2019 ATPS Sistemas de Banco de Dados
21/24
Analisando teremos:
O nome do produto depende do cdigo da vaga, porm no depende de Nro_ficha que a
chave primria da tabela, portanto no est na segunda forma normal. Isto gera problemas com a
manuteno dos dados, pois se houver alterao no nome do produto teremos que alterar em todos
os registros da tabela venda.
Para normalizar esta tabela teremos de criar a tabela Estacionamento que ficar com os
atributos Cdigo_vaga e vaga e na tabela Vaga manteremos somente os atributos Nro_ficha,
cdigo_vaga, quant, valor_unit e subtotal. Veja o resultado abaixo:
Cdigo_vaga Vaga
101 Executivo
102 Funcionrio
103 Visitante
104 Avulso
Tabela na 2 forma normal
Nro_ficha Cdigo_vaga Quant Valor_unit Subtotal
0005 101 5 300,00 1500,00
0006 102 3 150,00 450,00
0007 103 1 200,00 200,00
0008 104 15 50,00 750,00
Tabela na 2 forma normal
7/23/2019 ATPS Sistemas de Banco de Dados
22/24
Conforme visto na primeira forma normal, quando aplicamos normalizao comum gerar novas
tabelas a fim de satisfazer as formas normais que esto sendo aplicadas.
2-
Uma tabela est na 3 Forma Normal 3FN se ela estiver na 2FN e se nenhuma coluna no-
chave depender de outra coluna no-chave.
Na terceira forma normal temos de eliminar aqueles campos que podem ser obtidos pela
equao de outros campos da mesma tabela.
Procedimentos:
a) Identificar todos os atributos que so funcionalmente dependentes de outros atributos no chave;
b) Remov-los.
A chave primria da nova entidade ser o atributo do qual os atributos removidos
sofuncionalmente dependentes.
Exemplo de normalizao na terceira forma normal
Considere a tabela abaixo:
Nro_ficha Cdigo_vaga Quant Valor_unit Subtotal
0005 101 5 300,00 1500,00
0006 102 3 150,00 450,00
0007 103 1 200,00 200,00
0008 104 15 50,00 750,00
Tabela no esta na 3 forma normal
7/23/2019 ATPS Sistemas de Banco de Dados
23/24
Considerando ainda a nossa tabela Vaga, veremos que a mesma no est na terceira forma
normal, pois o subtotal o resultado da multiplicao Quant X Valor_unit, desta forma a coluna
subtotal depende de outras colunas no-chave.
Para normalizar esta tabela na terceira forma normal teremos de eliminar a coluna subtotal,
como no exemplo a seguir:
Nro_ficha Cdigo_vaga Quant Valor_unit
0005 101 5 300,00
0006 102 3 150,00
0007 103 1 200,00
0008 104 15 50,00
Tabela na 3 forma normal
Modelo Relacional
7/23/2019 ATPS Sistemas de Banco de Dados
24/24
Passo 3Relatrio 4
Aprendemos nesta etapa, a desenvolver a organizao de entidades no Banco de Dados
baseando nas regras de normalizao, fazendo com que minimize a duplicidade dos dados e
mantenha as devidas dependncias das informaes nas vrias entidades do Banco de Dados. A
proposta dessa etapa transformar tuplas no normalizadas em tuplas na 3 Forma Normal (3FN).
Passamos ai, a transformar as tuplas no normalizadas das entidades propostas, passando
para a 1 Forma Normal (1FN), e conceituando-as para melhor entendimento de normalizao, j
tnhamos as tuplas na 1 Forma Normal, a equipe seguiu o prximo passo e colocamos na 2 Forma
Normal(2FN). J o prximo passo era coloc-las na 3 Forma Normal, atravs de conhecimentos
extrados de livros e apostilas, podemos enfim deixar bem claro, oque normalizao e de como
faremos, para normalizar um Banco de Dados.