Projeto e ImplementaçãoProjeto e Implementação
Prof. Edney Fernandes
Instalação do Debian 6
◦ Configuração de rede
◦ Instalação do Serviço de ssh
#aptitude install ssh
Instalação do Apache
◦ ...
DB Desing
MySql Front
Banco de Dados
Coleção de dados relacionados.
Dados são “fatos conhecidos” que podem ser
armazenados e possuem significado
implícito.
Dis...
Banco de Dados
=
É o conjunto de dados
integrados que tem por
É o conjunto de dados
integrados que tem por
objetivo atende...
Produção Vendas Compras
Sistemas Integrados com dados compartilhados
Banco de Dados
.....
Produtos
Hierárquico
Modelo em árvore.
Uma base de dados hierárquica é um tipo deUma base de dados hierárquica é um tipo de
banco d...
Relacional
Relações representadas por tabelas.
O modelo relacional é um modelo de dados,O modelo relacional é um modelo de...
SGDB
É o Software que incorpora as funções de
definição, recuperação e alteração de dados
em um banco de dadosem um banco ...
Coleção de programas que permitem
definir, construir e manipular Base de
Dados.
Auto-contenção: armazena completamente
tod...
Abstração dos dados: é mostrado uma
representação conceitual dos dados.
Um modelo de (banco de) dados é uma
descrição dos tipos de informações que estão
armazenadas em um banco de dados
Modelo Conceitual
◦ Um modelo conceitual é uma descrição do banco de dados
de forma independente de implementação em um SG...
Modelo Lógico
◦ Um modelo lógico é uma descrição de um banco de dados
no nível de abstração visto pelo usuário do SGBD.
◦ ...
Com o avanço das tecnologias de
desenvolvimento de aplicações, novas
linguagens, orientação a objetos e análise de
sistema...
Estudo das informações existentes em
contexto sob observação para construção de
um modelo de representação e entendimento
...
Encontrar e separar dados de seus processos
para obter o domínio de negócio no qual a
aplicação está sendo desenvolvida.
A...
Um banco de dados mal projetado requererá
mais tempo e retrabalho a longo prazo.
Sem um devido planejamento e análise
cuid...
Porção da realidade, captada pelo analista, a
qual a gestão de negócio de uma organização
tem interesse em observar, contr...
É um processo, mental, usado para selecionar
características e propriedades de um
conjunto de objetos ou fatos, e excluír ...
A preocupação que o analista deve ter é
retratar as necessidades de informação que
as pessoas precisam para alcançar os
ob...
É utilizado para definir uma classe de objetos
ou coisas do mundo real caracterizado por
propriedades comuns.
Azul Vermelh...
Agregar significa compor parte de alguma
coisa.
Podemos entender classes de coisas como
elementos de composição de outra c...
Ocorre quando definimos um subconjunto de
relacionamentos entre elementos de duas ou
mais classes.
Bicicleta Carro Caminhã...
Entidade e Relacionamento
Criado por Edgar Codd.
A utilização da abordagem correta de uma
metodologia utilizada orientada a BD envolve
a estruturaçã...
Representa, descreve a realidade do ambiente
do problema, constituindo-se em uma visão
global dos principais dados e seus
...
O resultado de um modelo conceitual é um
esquema gráfico que representa a realidade
das informações existentes.
O modelo c...
Só inicia após a criação do modelo conceitual,
considerando-se as abordagens tecnológicas
possíveis do SGBD (relacionament...
Será construído a partir do modelo lógico,
descrevendo as estruturas físicas de
armazenamento de dados:
Estruturas
Tipo e ...
Esta é a etapa final de projeto do banco de
dados, onde será utilizada a linguagem DDL
para a montagem do BD.
Uso de lingu...
Linguagem de definição dos dados (DDL) -
Linguagem que define as aplicações, arquivos e
campos que irão compor o banco de ...
São conjuntos de dados vistos segundo um
conjunto de TABELAS, e as operações que as
utilizam são feitas por linguagens que...
A Teoria Relacional possui premissas que
definem uma tabela de dados:
1. Cada uma das tabelas é chamada de relação.
2. O c...
Tabela de CDs
Número do
CD
Data de
Gravação
Título do
Conteúdo
Responsável Local onde está
guardado
1 24/01/2008 Músicas M...
Em toda e qualquer tabela existente em um
banco de dados relacional sempre haverá
uma coluna ou um conjunto de colunas
con...
Nome Sexo Matricula Cargo cpf
Luiz Masculino 00001 analista 000000001-01
Carlos Masculino 00003 técnico 000000002-01
Renat...
São valores desconhecidos, ausentes para nós.
Uma chave primária jamais terá valor nulo.
Matricula nome telefone Telefone ...
Chave primária
1. Coluna ou concatenação de colunas.
2. Valor único na tabela.
3. Cada linha tem um valor diferente da cha...
Uma tabela pode ter um conjunto de
atributos que contêm valores com o mesmo
domínio de um conjunto de atributos que
formam...
Alimento Quantidade Data
Validade
Fabricante Unidade
Feijão 3 10/10/2009 1 1
Arroz 4 20/10/2009 2 1
Açúcar 5 10/09/2009 4 ...
Matricula Nome DataAdm Sexo CodCargo CodDepto
0001 Jose 14/10/1981 Mas 1 1
0002 Maria 01/01/1976 Fem 2 2
0003 Sâmia 10/10/...
Existe um conjunto de regras de operações
para um banco de dados relacional que
coloca restrições, regras nas operações de...
INSERT
Se ocorrer a inclusão da linha @.
Se algum atributo da chave primária da linha
@ for nulo.
Ou existe outra linha na...
DELETE
Se ocorre uma exclusão da linha @.
Se algum atributo de uma outra tabela faz
referencia à chave primária da linha @...
UPDATE
Verificar se existe nas tabelas relacionadas a
chave primária da tabela que está sendo
alterada com novo valor.
Ter...
Criado por Peter Chen
A estrutura lógica global de um BD pode ser
expressa graficamente por um diagrama de
entidades (repr...
RelacionamentoEntidade 1 Entidade 2Entidade 2
Atributo
1
Atributo
2
PedidoFornecedor Entidade 2Produto
NomeFornIdForn
IdProd DescProd
Correspondem a quaisquer coisas do mundo
real sobre as quais se deseja armazenar
informações.
São exemplos típicos de enti...
Uma entidade normalmente tem várias
manifestações dela mesma. Por exemplo, a
entidade funcionário representa todos os
func...
Essas coisas que fazem parte do ambiente
são entidades, pois podemos manter
informações sobre elas, e são participativas
n...
CRM do Médico Nome Paciente Data da Consulta
21113 João 10/04/2009
21113 Maria 10/04/2009
44444 Luiz 20/04/2009
Nome Pacie...
È a representação das associações existentes
entre entidades no mundo real.
No mundo real uma entidade muito
raramente se ...
Pode-se dar dois nomes a um
relacionamento.
Um verbo para explicar o fato no sentido da
entidade A para entidade B, e o ou...
São características de uma entidade que a
descreve detalhadamente.
Uma ocorrência específica de um atributo em
uma entidad...
Os atributos de uma entidade emprego, por
exemplo, são normalmente a identificação do
empregado, nome, endereço, sexo, tel...
A notação de Rumbaugh em seu livro coloca
uma lista de atributos dentro do retângulo da
entidade, deixando sobre ele o nom...
Uma clínica necessita controlar as consultas médicas
realizadas e marcadas pelos médicos a ela vinculados,
acompanhar os p...
Em uma academia da ginástica os clientes podem
freqüentar quantas aulas desejem.
As aulas são identificadas por um número
...
O grau de relacionamento é o número de
entidades que participam dele.
Existem 3 tipos básicos de grau de
relacionamento: b...
Pessoa Projeto
Atua
Atuam
Pessoa Projeto
Atua
Atuam
Máquinas
Material Relatório
Pessoa Projeto
Atua
Atuam
Máquinas
Descreve as restrições no mapeamento das
associações existentes entre as ocorrências
de entidades em um relacionamento.
Um...
Quando entre duas entidades temos um
relacionamento em que cada ocorrência da
entidade A se associa ou relaciona com uma e...
É a conectividade mais comum no mundo real
e no mundo dos negócios e a mais utilizada
na solução de modelos de dados.
Ela ...
Observa-se nos dois sentidos de leitura a
conectividade de um-para-muitos. Quando
existe tal relacionamento temos então o ...
O campeonato de Fórmula 1 tem muitas
corridas durante o ano. As equipes que
disputam o campeonato possuem muitos
carros, p...
Lista de perguntas úteis para identificar
entidades.
1. Que coisas são trabalhadas?
2. O que pode ser identificado por núm...
Substantivos que não possuem atributos podem
ser atributos de outras entidades.
Adjetivos colocados pelos usuários indicam...
O relacionamento é necessário?
Ele é útil?
É redundante?
Se redundante, retirar?
Qual a sua finalidade? (Documentar)Qual a...
O objetivo da normalização é evitar os problemas
que podem provocar falhas no projeto de banco de
dados, bem como eliminar...
Produto NumPedido Cliente End LimCred Data Vendedor
Limpador 0001 Davi Rio 1000,00 05/05/09 Carlos
Computa
dor
0003 Helena...
A tabela está na primeira forma normal se e
somente se todas as colunas possuem um
único valor, e não existem grupos
repet...
Estrutura original da Tabela NF
{Numero da Nota Fiscal, Serie, Emissão, Cod
Cliente, Nome, End Cliente, CNPJ, Relação
Prod...
NF CodClie
nte
Nome
Cliente
End
Cliente
CNPJ Data
Emissão
Total
Geral NF
00002 1 Mauro Rio 000001 01/02/09 1000,00
11122 2...
Após a aplicação da 1FN.
Tabela de Notas Fiscais
{Num NF, Serie, Data, Codigo do Cliente, Nome
do Cliente, Endereço, CNPJ,...
Um tabela está na segunda forma normal
(2FN) se ela estiver na 1FN e todo atributo
não-chave é plenamente dependente da
ch...
NF CodProd Descrição Quanti
dade
Valor
Unitário
Valor
Total
00002 44 Limpadora 3 300,00 900,00
11122 10 Computador 1 1000,...
CodProduto Descrição Valor Unitário
44 Limpadora 300,00
10 Computador 1000,00
22 Refrigerador 2000,00
Tabela de Produtos
N...
A terceira forma normal determina que não devem
existir atributos com dependência funcional
transitiva em uma tabela, pois...
NF CodClie
nte
Nome
Cliente
End
Cliente
CNPJ Data
Emissão
Total
Geral NF
00002 1 Mauro Rio 000001 01/02/09 1000,00
11122 2...
CodCliente Nome
Cliente
End Cliente CNPJ
1 Mauro Rio 000001
2 Cintia S.Paulo 000022
3 Jose Belém 000033
4 Manoel Marituba ...
01 banco de dados-basico
01 banco de dados-basico
01 banco de dados-basico
01 banco de dados-basico
01 banco de dados-basico
01 banco de dados-basico
01 banco de dados-basico
01 banco de dados-basico
Próximos SlideShares
Carregando em…5
×

01 banco de dados-basico

1.312 visualizações

Publicada em

Introdução aos conceitos de banco de dados.

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
1.312
No SlideShare
0
A partir de incorporações
0
Número de incorporações
7
Ações
Compartilhamentos
0
Downloads
52
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

01 banco de dados-basico

  1. 1. Projeto e ImplementaçãoProjeto e Implementação Prof. Edney Fernandes
  2. 2. Instalação do Debian 6 ◦ Configuração de rede ◦ Instalação do Serviço de ssh #aptitude install ssh Instalação do Apache ◦ # aptitude install apache2 Instalação do PHP5Instalação do PHP5 ◦ # aptitude install php5 #echo “<? Phpinfo(); ?>” > /var/www/index.php Instalação do MySql ◦ # aptitude install mysql-server #Mysql –u root -psenha Instalação do phpmyadmin ◦ # aptitude install phpmyadmin
  3. 3. DB Desing MySql Front
  4. 4. Banco de Dados
  5. 5. Coleção de dados relacionados. Dados são “fatos conhecidos” que podem ser armazenados e possuem significado implícito. Disposição desordenada dos dados nãoDisposição desordenada dos dados não podem ser tratados como banco de dados. Projetado, Construído e Populado com um propósito específico. Representa algum aspecto do mundo real, chamado de “Minimundo”, onde qualquer alteração neste “mini-mundo” é automaticamente refletido no banco de dados.
  6. 6. Banco de Dados = É o conjunto de dados integrados que tem por É o conjunto de dados integrados que tem por objetivo atender a uma comunidade de usuários.
  7. 7. Produção Vendas Compras Sistemas Integrados com dados compartilhados Banco de Dados ..... Produtos
  8. 8. Hierárquico Modelo em árvore. Uma base de dados hierárquica é um tipo deUma base de dados hierárquica é um tipo de banco de dados que conecta registros numa estrutura de dados em árvore através de ligações de tal modo que cada tipo de registro tenha apenas um possuidor.
  9. 9. Relacional Relações representadas por tabelas. O modelo relacional é um modelo de dados,O modelo relacional é um modelo de dados, que se baseia no princípio em que todos os dados estão guardados em tabelas (ou, matematicamente falando, relações).
  10. 10. SGDB É o Software que incorpora as funções de definição, recuperação e alteração de dados em um banco de dadosem um banco de dados
  11. 11. Coleção de programas que permitem definir, construir e manipular Base de Dados. Auto-contenção: armazena completamente toda a descrição dos dados. Sistema de Gerência de Bando de Dados toda a descrição dos dados. Independência dos dados: nenhuma informação fica amarrada aos programas de aplicação.
  12. 12. Abstração dos dados: é mostrado uma representação conceitual dos dados.
  13. 13. Um modelo de (banco de) dados é uma descrição dos tipos de informações que estão armazenadas em um banco de dados
  14. 14. Modelo Conceitual ◦ Um modelo conceitual é uma descrição do banco de dados de forma independente de implementação em um SGBD. ◦ A técnica mais difundida de modelagem conceitual é a abordagem entidade- relacionamento (ER).
  15. 15. Modelo Lógico ◦ Um modelo lógico é uma descrição de um banco de dados no nível de abstração visto pelo usuário do SGBD. ◦ Assim, o modelo lógico é dependente do tipo particular de SGBD que está sendo usado. Ex. TipoDeProduto(CodTipoProd,DescrTipoProd) Produto(CodProd,DescrProd,PrecoProd,CodTipoProd) CodTipoProd referencia TipoDeProduto
  16. 16. Com o avanço das tecnologias de desenvolvimento de aplicações, novas linguagens, orientação a objetos e análise de sistemas. Há necessidade de se projetar um banco deHá necessidade de se projetar um banco de dados para melhor interagir com as aplicações de forma relacional. Proporcionar confiabilidade, suportar grandes quantidades de dados.
  17. 17. Estudo das informações existentes em contexto sob observação para construção de um modelo de representação e entendimento de tal contexto. Busca minerar informações que representem o contexto e estruturando-as em conjunto que denominamos de modelo lógico de dados.
  18. 18. Encontrar e separar dados de seus processos para obter o domínio de negócio no qual a aplicação está sendo desenvolvida. A melhor maneira de se projetar um banco deA melhor maneira de se projetar um banco de dados é entender e dominar as técnicas de modelagem de dados.
  19. 19. Um banco de dados mal projetado requererá mais tempo e retrabalho a longo prazo. Sem um devido planejamento e análise cuidadosa pode-se criar um BD que omitam dados importantes, inconsistências dedados importantes, inconsistências de informações, valores diferentes da realidade e manutenções sucessivas da estrutura. O modelo de dados deve ser simples para comunicar ao usuário final e bastante detalhada para o administrador de banco de dados.
  20. 20. Porção da realidade, captada pelo analista, a qual a gestão de negócio de uma organização tem interesse em observar, controlar e administrar. A complexidade existente no momento da análise pode-se subdividir em partes menores formando as visões de processos de negócio.
  21. 21. É um processo, mental, usado para selecionar características e propriedades de um conjunto de objetos ou fatos, e excluír outros que não são relevantes dentro do contexto. Deve-se concentrar na observação dosDeve-se concentrar na observação dos objetos relevantes com a finalidade de construir um modelo de compreensão e conceitos existentes na realidade. Minimundo.
  22. 22. A preocupação que o analista deve ter é retratar as necessidades de informação que as pessoas precisam para alcançar os objetivos em seu ambiente de negócio. Registrar as necessidades em um modelo de dados para mostrar as informações existentes e como elas são relacionadas.
  23. 23. É utilizado para definir uma classe de objetos ou coisas do mundo real caracterizado por propriedades comuns. Azul Vermelha Verde Amarela
  24. 24. Agregar significa compor parte de alguma coisa. Podemos entender classes de coisas como elementos de composição de outra classe maior.maior. Guidão (Classes) Coroas Pedais Rodas
  25. 25. Ocorre quando definimos um subconjunto de relacionamentos entre elementos de duas ou mais classes. Bicicleta Carro Caminhão Ônibus
  26. 26. Entidade e Relacionamento
  27. 27. Criado por Edgar Codd. A utilização da abordagem correta de uma metodologia utilizada orientada a BD envolve a estruturação de 3(três) níveis de visão de dados.dados. Três etapas(MODELOS) na execução de um projeto de BD devem ser seguidos: Conceitual Lógico Físico
  28. 28. Representa, descreve a realidade do ambiente do problema, constituindo-se em uma visão global dos principais dados e seus relacionamentos, completamente independente dos aspectos de suaindependente dos aspectos de sua implementação tecnológica. Esta sempre será a primeira etapa do projeto de BD. Objetivo de descrever de forma simples e facilmente compreendida pelo usuário final as informações do negócio (Contexto).
  29. 29. O resultado de um modelo conceitual é um esquema gráfico que representa a realidade das informações existentes. O modelo conceitual nunca deve ser construídos com considerações sobreconstruídos com considerações sobre processos de negócios, com preocupações de acesso aos dados, como serão realizadas as operações de consulta e manutenção dos dados.
  30. 30. Só inicia após a criação do modelo conceitual, considerando-se as abordagens tecnológicas possíveis do SGBD (relacionamento, hierarquia, rede) para estruturação e estabelecimento da lógica relacional existenteestabelecimento da lógica relacional existente entre os dados definidos no modelo conceitual. O modelo lógico descreve as estruturas que estarão no BD de acordo com as possibilidades permitidas.
  31. 31. Será construído a partir do modelo lógico, descrevendo as estruturas físicas de armazenamento de dados: Estruturas Tipo e Tamanho de CamposTipo e Tamanho de Campos Índices Domínio de Preenchimento dos Campos Nomenclatura Exigências de Conteúdo Gatilhos; etc.
  32. 32. Esta é a etapa final de projeto do banco de dados, onde será utilizada a linguagem DDL para a montagem do BD. Uso de linguagem SQL para criação das tabelas.
  33. 33. Linguagem de definição dos dados (DDL) - Linguagem que define as aplicações, arquivos e campos que irão compor o banco de dados (comandos de criação e atualização da estrutura dos campos dos arquivos). Linguagem de manipulação dos dados (DML) - Linguagem que define os comandos de manipulação e operação dos dados (comandos de consulta e atualização dos dados dos arquivos).
  34. 34. São conjuntos de dados vistos segundo um conjunto de TABELAS, e as operações que as utilizam são feitas por linguagens que o manipulam, não sendo procedurais, ou seja, manipulando conjuntos de uma só vez.manipulando conjuntos de uma só vez. Para trabalhar com estes objetos, o usuário conta com um conjunto de operações e funções de alto nível, constantes na álgebra relacional.
  35. 35. A Teoria Relacional possui premissas que definem uma tabela de dados: 1. Cada uma das tabelas é chamada de relação. 2. O conjunto de uma linha e suas colunas é chamado de tupla. 3. Cada coluna dessa tabela tem um nome e representa um domínio da tabela.domínio da tabela. 4. A ordem das linha é irrelevante. 5. Não há duas linhas iguais. 6. Usamos nomes para fazer referência às colunas. 7. A ordem das colunas também é irrelevante. 8. Cada tabela tem um nome próprio, distinto de qualquer outra tabela no bando de dados.
  36. 36. Tabela de CDs Número do CD Data de Gravação Título do Conteúdo Responsável Local onde está guardado 1 24/01/2008 Músicas Márcio Estojo 1 3 13/02/2007 Corel Lucas Estojo 13 13/02/2007 Corel Lucas Estojo 1 2 14/12/2008 IRRF 2008 Lucas Estojo 2 4 25/01/2009 Fotos João Estojo 3
  37. 37. Em toda e qualquer tabela existente em um banco de dados relacional sempre haverá uma coluna ou um conjunto de colunas concatenadas, cujos valores são únicos na tabela, isto é, nunca se repete aquele valortabela, isto é, nunca se repete aquele valor em nenhuma outra linha da tabela. Essa coluna ou conjunto de colunas concatenadas identifica uma única linha da tabela. Então dizemos que essa coluna ou conjunto de colunas forma a chave primária da tabela.
  38. 38. Nome Sexo Matricula Cargo cpf Luiz Masculino 00001 analista 000000001-01 Carlos Masculino 00003 técnico 000000002-01 Renata Feminino 00002 analista 000000003-01 Natália Feminino 00004 psicóloga 000000004-01 Tabela de Funcionários Natália Feminino 00004 psicóloga 000000004-01 Candidatos a Chave Primária: Matricula 00001 00003 00002 00004 cpf 000000001-01 000000002-01 000000003-01 000000004-01
  39. 39. São valores desconhecidos, ausentes para nós. Uma chave primária jamais terá valor nulo. Matricula nome telefone Telefone 2Matricula nome telefone Telefone 2 00001 Neves 3222-2222 nulo 00002 Talita 3344-4444 8888-8888 00003 Bruno 3333-3333 nulo
  40. 40. Chave primária 1. Coluna ou concatenação de colunas. 2. Valor único na tabela. 3. Cada linha tem um valor diferente da chave primária.primária. 4. Não existem valores nulos na chave primária.
  41. 41. Uma tabela pode ter um conjunto de atributos que contêm valores com o mesmo domínio de um conjunto de atributos que formam a chave primária de uma outra tabela.tabela. Esse conjunto se chama chave estrangeira.
  42. 42. Alimento Quantidade Data Validade Fabricante Unidade Feijão 3 10/10/2009 1 1 Arroz 4 20/10/2009 2 1 Açúcar 5 10/09/2009 4 1 Leite 2 15/10/2009 5 4 Estoque de Alimentos Leite 2 15/10/2009 5 4 Unida de Armazenamento Nome 1 Kg 2 G 3 M 4 L Fabricante Nome 1 Polar 2 Roscato 3 Tio João 4 Mococa Fornecedores Unidades de Armazenamento
  43. 43. Matricula Nome DataAdm Sexo CodCargo CodDepto 0001 Jose 14/10/1981 Mas 1 1 0002 Maria 01/01/1976 Fem 2 2 0003 Sâmia 10/10/1986 Fem 3 3 0004 Natasha 25/12/1954 Fem 4 4 CodDepto NomeDepto 1 Informática 2 Financeiro 3 Materiais 4 RH CodCargo NomeCargo 1 Analista 2 Assistente Administrativo 3 Pregoeiro 4 Psicólogo
  44. 44. Existe um conjunto de regras de operações para um banco de dados relacional que coloca restrições, regras nas operações de atualização das tabelas, de forma a garantir e manter a integridade referencial.manter a integridade referencial.
  45. 45. INSERT Se ocorrer a inclusão da linha @. Se algum atributo da chave primária da linha @ for nulo. Ou existe outra linha na tabela A com oOu existe outra linha na tabela A com o mesmo valor da chave primária da linha @. Então impede-se a inclusão de linha. Senão realiza-se a inclusão de linha.
  46. 46. DELETE Se ocorre uma exclusão da linha @. Se algum atributo de uma outra tabela faz referencia à chave primária da linha @ (existe uma chave estrangeira com o valor da chave primária de @).@). Então impede-se a inclusão de linha. Ou realiza-se a deleção em cascata de todas as linhas da outra tabela que referenciam o valor da chave primária de @. Ou modifica-se (altera-se) para nulo o valor da chave estrangeira dessa outra tabela.
  47. 47. UPDATE Verificar se existe nas tabelas relacionadas a chave primária da tabela que está sendo alterada com novo valor. Ter cuidado ao utilizar função cascata paraTer cuidado ao utilizar função cascata para que não sejam perdidos valores relacionados em outras tabelas.
  48. 48. Criado por Peter Chen A estrutura lógica global de um BD pode ser expressa graficamente por um diagrama de entidades (representadas por retângulos), por relacionamentos (representados por losângulos) e pelos atributos de cada entidade oupelos atributos de cada entidade ou relacionamento através de elipses (notação Peter Chen). O modelo ER possui um elevado grau de semântica, que torna mais simples e de fácil comunicação entre os usuários, profissionais de informática e desenvolvedores de sistemas.
  49. 49. RelacionamentoEntidade 1 Entidade 2Entidade 2 Atributo 1 Atributo 2
  50. 50. PedidoFornecedor Entidade 2Produto NomeFornIdForn IdProd DescProd
  51. 51. Correspondem a quaisquer coisas do mundo real sobre as quais se deseja armazenar informações. São exemplos típicos de entidades: pessoas (físicas ou jurídicas, tais como funcionários,(físicas ou jurídicas, tais como funcionários, empresas, fornecedores e clientes) objetos materiais ou abstratos, como produto, veículo, disciplina e projeto e eventos ou fatos como pedido, viagem, empréstimo e venda principalmente.
  52. 52. Uma entidade normalmente tem várias manifestações dela mesma. Por exemplo, a entidade funcionário representa todos os funcionários da empresa. Uma entidade possui ocorrências ou instâncias, e cada um dos funcionáriosinstâncias, e cada um dos funcionários descritos pela entidade funcionário é uma de suas ocorrências, ou instancias. No modelo ER são representados por meio de um retângulo contendo o nome representantivo da entidade (um substnativo no singular) ao centro.
  53. 53. Essas coisas que fazem parte do ambiente são entidades, pois podemos manter informações sobre elas, e são participativas na existência do ambiente. Cada uma delas tem significado próprio.tem significado próprio.
  54. 54. CRM do Médico Nome Paciente Data da Consulta 21113 João 10/04/2009 21113 Maria 10/04/2009 44444 Luiz 20/04/2009 Nome Paciente Sexo Idade João Masculino 30 Maria Feminino 21 Luiz Masculino 18
  55. 55. È a representação das associações existentes entre entidades no mundo real. No mundo real uma entidade muito raramente se apresenta isolada, tendo existência completamente independente deexistência completamente independente de quaisquer outras. O nome do relacionamento normalmente é um verbo, pois é resultante de um fato que associa as entidades.
  56. 56. Pode-se dar dois nomes a um relacionamento. Um verbo para explicar o fato no sentido da entidade A para entidade B, e o outro verbo no sentido de B para A.no sentido de B para A. Possui Possui Pertence
  57. 57. São características de uma entidade que a descreve detalhadamente. Uma ocorrência específica de um atributo em uma entidade ou relacionamento é denominada de valor do atributo.denominada de valor do atributo. Os atributos representam propriedades elementares de uma entidade ou relacionamento. Cada atributo está associado a um domínio particular, que é um conjunto de valores válidos para o atributo.
  58. 58. Os atributos de uma entidade emprego, por exemplo, são normalmente a identificação do empregado, nome, endereço, sexo, telefone, cargo, salário. Notação de Peter Chen original apresenta oNotação de Peter Chen original apresenta o atributo como uma elipse com nome do atributo. Funcionário Endereço Nome Matricula
  59. 59. A notação de Rumbaugh em seu livro coloca uma lista de atributos dentro do retângulo da entidade, deixando sobre ele o nome da entidade. Funcionario Matricula(PK) Nome Data_Nascimento Sexo
  60. 60. Uma clínica necessita controlar as consultas médicas realizadas e marcadas pelos médicos a ela vinculados, acompanhar os pacientes atendidos e manter o seu acompanhamento clínico. Para cada médico a clínica mantém uma ficha com o número de CRM, seu nome, endereço, data de nascimento, sexo, etc. Toda consulta é registrada em fichário próprio com as informaçõesé registrada em fichário próprio com as informações sobre o médico, paciente, diagnóstico, etc. Quais são os objetos candidatos a entidades, relacionamento e atributos nesse ambiente em observação? Observe com a sua capacidade de abstração as coisas que existem no ambiente: médicos, pacientes, exames, consulta.
  61. 61. Em uma academia da ginástica os clientes podem freqüentar quantas aulas desejem. As aulas são identificadas por um número seqüencial relativamente à modalidade e são caracterizadas pelo nível de dificuldade, professor e sala.e sala. Os professores são identificados pelo nome e sobre eles é ainda guardado o sobrenome e telefone. Sobre os alunos são conhecidos o nome, idade, sexo e telefone.
  62. 62. O grau de relacionamento é o número de entidades que participam dele. Existem 3 tipos básicos de grau de relacionamento: binário, ternário e e-nário. Binário: acontece entre duas entidades. MaisBinário: acontece entre duas entidades. Mais comum. Ternário: participam três entidades. E-nário: participam múltiplas entidades.
  63. 63. Pessoa Projeto Atua Atuam
  64. 64. Pessoa Projeto Atua Atuam Máquinas
  65. 65. Material Relatório Pessoa Projeto Atua Atuam Máquinas
  66. 66. Descreve as restrições no mapeamento das associações existentes entre as ocorrências de entidades em um relacionamento. Uma ocorrência de uma entidade se associa, conecta a uma ocorrência de outra entidade,conecta a uma ocorrência de outra entidade, ou muitas ocorrências dessa outra entidade. Um relacionamento possui a característica básica chamada cardinalidade. Possui Pertence Departamento Entidade 2Funcionário
  67. 67. Quando entre duas entidades temos um relacionamento em que cada ocorrência da entidade A se associa ou relaciona com uma e somente uma ocorrência da entidade B e cada ocorrência da entidade B se relaciona comocorrência da entidade B se relaciona com uma e somente uma ocorrência da entidade A, então temos um relacionamento do tipo um-para-um (1:1). Departamento Funcionário Gerenciado Gerencia 1 1
  68. 68. É a conectividade mais comum no mundo real e no mundo dos negócios e a mais utilizada na solução de modelos de dados. Ela acontece quando uma ocorrência da entidade A se associa ou conecta a mais deentidade A se associa ou conecta a mais de uma ocorrência da entidade B, visto que a ocorrência da entidade B está conectada a um e somente uma ocorrência da entidade A. Pedido Ítens Possui Estão em 1 N
  69. 69. Observa-se nos dois sentidos de leitura a conectividade de um-para-muitos. Quando existe tal relacionamento temos então o que se denomina conectividade muitos-para- muitos.muitos. Nota Fiscal Produtos Possui Está em N N
  70. 70. O campeonato de Fórmula 1 tem muitas corridas durante o ano. As equipes que disputam o campeonato possuem muitos carros, pilotos e mecânicos e esses carros e pilotos participam normalmente de todas aspilotos participam normalmente de todas as provas do campeonato. Que modelo de dados podemos obter deste fato? Carro Grande Prêmio Participa Participam N N
  71. 71. Lista de perguntas úteis para identificar entidades. 1. Que coisas são trabalhadas? 2. O que pode ser identificado por número, código? 3. Essa coisa tem atributos? Esses atributos são relevantes, pertinentes?pertinentes? 4. Essa coisa pode assumir a forma de uma tabela? 5. É um documento externo (recibo, fatura, nota fiscal)? Se sim, é forte candidato à entidade? 6. Tem significado próprio? 7. Qual a entidade principal do contexto?
  72. 72. Substantivos que não possuem atributos podem ser atributos de outras entidades. Adjetivos colocados pelos usuários indicam normalmente atributos de uma entidade. Verbos indicam prováveis relacionamentos. Advérbios temporais indicam prováveis atributos de um relacionamento. Procure sempre visualizar a entidade principal do contexto sob análise. Entidade cujo nome termine por “ão” ou “ento” geralmente são procedimentos.
  73. 73. O relacionamento é necessário? Ele é útil? É redundante? Se redundante, retirar? Qual a sua finalidade? (Documentar)Qual a sua finalidade? (Documentar) Verbos indicam possíveis relacionamentos. Analisar sempre as entidades aos pares.
  74. 74. O objetivo da normalização é evitar os problemas que podem provocar falhas no projeto de banco de dados, bem como eliminar a mistura de assuntos e as correspondentes redundâncias desnecessárias de dados. O processo de normalização aplica uma série deO processo de normalização aplica uma série de regras sobre as tabelas de um banco de dados, para verificar se estão corretamente projetadas. Embora exista um conjunto de cinco formas normais (regras de normalização), na prática usamos desse conjunto efetivamente três formas normais.
  75. 75. Produto NumPedido Cliente End LimCred Data Vendedor Limpador 0001 Davi Rio 1000,00 05/05/09 Carlos Computa dor 0003 Helena Pará 2000,00 23/01/09 Carlos Refrigera dor 0002 José S. Paulo 1500,00 27/07/09 Maira dor Limpador 0004 Pedro Belém 4000,00 14/09/09 Romeu Limpador 0005 José S. Paulo 1500,00 16/09/09 Maira
  76. 76. A tabela está na primeira forma normal se e somente se todas as colunas possuem um único valor, e não existem grupos repetidos(colunas) em uma linha ou atributos compostos.compostos.
  77. 77. Estrutura original da Tabela NF {Numero da Nota Fiscal, Serie, Emissão, Cod Cliente, Nome, End Cliente, CNPJ, Relação Produtos vendidos, Cod Produto, Decrição,Produtos vendidos, Cod Produto, Decrição, Total de produto, total geral da nota} etc...
  78. 78. NF CodClie nte Nome Cliente End Cliente CNPJ Data Emissão Total Geral NF 00002 1 Mauro Rio 000001 01/02/09 1000,00 11122 2 Cintia S.Paulo 000022 01/02/09 3000,00 22288 3 Jose Belém 000033 02/02/09 4000,00 88822 4 Manoel Marituba 000099 02/02/09 500,00 Tabela Notas Fiscais Aplicação da 1FN 88822 4 Manoel Marituba 000099 02/02/09 500,00 NF CodProd Descrição Quanti dade Valor Unitário Valor Total 00002 44 Limpadora 3 300,00 900,00 11122 10 Computador 1 1000,00 1000,00 22288 22 Refrigerador 4 2000,00 8000,00 Tabela Itens da Nota Fiscal
  79. 79. Após a aplicação da 1FN. Tabela de Notas Fiscais {Num NF, Serie, Data, Codigo do Cliente, Nome do Cliente, Endereço, CNPJ, ...}do Cliente, Endereço, CNPJ, ...} Tabela Itens da NF {Num NF, Cod Produto, descrição, quantidade, preço, etc...}
  80. 80. Um tabela está na segunda forma normal (2FN) se ela estiver na 1FN e todo atributo não-chave é plenamente dependente da chave primária. A resolução da aplicação da 2FN é realizadaA resolução da aplicação da 2FN é realizada através da exclusão dos atriutos que não dependem totalmente da chave primária, da tabela original, e constituindo-se com estes uma nova tabela, que terá como chave primária o atributo participante da chave primária da tabela origem.
  81. 81. NF CodProd Descrição Quanti dade Valor Unitário Valor Total 00002 44 Limpadora 3 300,00 900,00 11122 10 Computador 1 1000,00 1000,00 Tabela Itens da Nota Fiscal 11122 10 Computador 1 1000,00 1000,00 22288 22 Refrigerador 4 2000,00 8000,00
  82. 82. CodProduto Descrição Valor Unitário 44 Limpadora 300,00 10 Computador 1000,00 22 Refrigerador 2000,00 Tabela de Produtos NF CodProd Quantidade Valor Total 00002 44 3 900,00 11122 10 1 1000,00 22288 22 4 8000,00 Tabela Itens da Nota Fiscal
  83. 83. A terceira forma normal determina que não devem existir atributos com dependência funcional transitiva em uma tabela, pois podem provocar da mesma forma anomalias de inclusão, manutenção e deleção. A aplicação da 3FN consiste em retirar dasA aplicação da 3FN consiste em retirar das estruturas os campos que são funcionalmente dependentes de outros campos que não são chaves. Podemos afirmar que uma estrutura está na 3FN se ela estiver na 2FN e não possuir campos dependentes de outros campos não chaves.
  84. 84. NF CodClie nte Nome Cliente End Cliente CNPJ Data Emissão Total Geral NF 00002 1 Mauro Rio 000001 01/02/09 1000,00 11122 2 Cintia S.Paulo 000022 01/02/09 3000,00 22288 3 Jose Belém 000033 02/02/09 4000,00 88822 4 Manoel Marituba 000099 02/02/09 500,00 Tabela Notas Fiscais 88822 4 Manoel Marituba 000099 02/02/09 500,00
  85. 85. CodCliente Nome Cliente End Cliente CNPJ 1 Mauro Rio 000001 2 Cintia S.Paulo 000022 3 Jose Belém 000033 4 Manoel Marituba 000099 Tabela Cliente NF CodCliente Data Emissão Total Geral NF 00002 1 01/02/09 1000,00 11122 2 01/02/09 3000,00 22288 3 02/02/09 4000,00 88822 4 02/02/09 500,00 Tabela Nota Fiscal

×