You are on page 1of 13

Tcnicas e Linguagens para Banco de Dados I

Banco de Dados:

Banco de Dados

O que Banco de Dados?


Definindo Banco de Dados, Arquivos, Registros e Campos.

Banco de Dados:

Armrios

Pastas

Fichas

Nome: Filiao Pai: Me: Data Nascimento Idade Nacionalidade

Campos

Banco de Dados

O que Banco de Dados?


Definindo Banco de Dados, Arquivos, Registros e Campos.

Banco de Dados

O que Banco de Dados?


Definindo Banco de Dados, Arquivos, Registros e Campos.

Armrios (Banco de Dados) Pastas (Tabelas ou Arquivos) Fichas (Registros)


Nome: Filiao Pai: Me: Data Nascimento Idade Nacionalidade

Armrios (Banco de Dados) Pastas (Tabelas ou Arquivos) Fichas (Registros)


Nome:

um conjunto de Tabelas (ou Pastas)

um conjunto de Fichas (ou Registros)

um conjunto de Dados (ou Atributos)

Campos (Atributos ou Campos...)

Filiao Pai: Me: Data Nascimento Idade Nacionalidade

Campos o que define o contedo (Dados) (Atributos do(s) registro(s) a ser(em) armazenados ou Campos...)

Banco de Dados

Como isso representado manualmente...


Representando...

Banco de Dados

Como isso representado tecnologicamente...


Representando...

Armrio Empresa Pasta Empregados

Empregados
Tabela
Nome
Joo Azevedo Mrcia Parra Marcos Guerra Julia Silva

Data Nascimento
15/11/1977 10/02/1970 25/12/1970 18/09/1960 25/09/1972

Idade
28 35 34 44 32

Nacionalidade
Brasileira Brasileira Brasileira Brasileira Portuguesa

Fichas de 5 Empregados
Registros
Nome: Filiao Pai: Me: Data Nascimento Idade Nacionalidade
Nome:

Julia Silva

Atributos especficos de 1 Empregado contidos em 1 Ficha

Filiao Pai: Me: Data Nascimento Idade Nacionalidade

Campos ou Atributos

Domnios

Banco de Dados

Como isso representado tecnologicamente...


Identificando Registros atravs da Chave Primria...

Banco de Dados

Como isso representado tecnologicamente...


Identificando Registros atravs da Chave Primria...

Depois de tudo pronto...(???)


Empregados
Nome
Joo Azevedo Mrcia Parra Marcos Guerra Julia Silva Julia Silva

Empregados
Nome
Joo Azevedo Mrcia Parra Marcos Guerra Julia Silva Julia Silva

Data Nascimento
15/11/1977 10/02/1970 25/12/1970 18/09/1960 25/09/1972

Idade
28 35 34 44 32

Nacionalidade
Brasileira Brasileira Brasileira Brasileira Portuguesa

Data Nascimento
15/11/1977 10/02/1970 25/12/1970 18/09/1960 25/09/1972

Idade
28 35 34 44 32

Nacionalidade
Brasileira Brasileira Brasileira Brasileira Portuguesa

Pergunta: Em que Ano nasceu Jlia Silva?

Banco de Dados

Como isso representado tecnologicamente...


Identificando Registros atravs da Chave Primria...

Banco de Dados

Como isso representado tecnologicamente...


Identificando os Registros (antigas Fichas)...

Empregados
Nome
Joo Azevedo Mrcia Parra Marcos Guerra Julia Silva Julia Silva

Empregados
Cdigo Empregado
100 101 102 103 104

Data Nascimento
15/11/1977 10/02/1970 25/12/1970 18/09/1960 25/09/1972

Idade
28 35 34 44 32

Nacionalidade
Brasileira Brasileira Brasileira Brasileira Portuguesa

Nome
Joo Azevedo Mrcia Parra Marcos Guerra Julia Silva Julia Silva

Data Nascimento
15/11/1977 10/02/1970 25/12/1970 18/09/1960 25/09/1972

Idade
28 35 34 44 32

Nacionalidade
Brasileira Brasileira Brasileira Brasileira Portuguesa

Pergunta: Em que Ano nasceu Jlia Silva? Resposta: Qual delas...?

Pergunta: Em que Ano nasceu Jlia Silva? Resposta: Qual delas...? A de cdigo 103 ou 104?

Banco de Dados

Como isso representado tecnologicamente...


Identificando os Registros (antigas Fichas)...

Banco de Dados Banco de Dados Banco de Dados

DER Diagrama Entidade Relacionamento


Introduo - Formas de Obteno de Dados para a Modelagem...

Empregados
Cdigo Empregado
100 101 102 103 104

Nome
Joo Azevedo Mrcia Parra Marcos Guerra Julia Silva Julia Silva

Data Nascimento
15/11/1977 10/02/1970 25/12/1970 18/09/1960 25/09/1972

Idade
28 35 34 44 32

Nacionalidade
Brasileira Brasileira Brasileira Brasileira Portuguesa

Entrevista, Documentao, Pesquisa, Avaliao de Sistema Atual, etc.

TODA Tabela (ou Entidade) deve OBRIGATORIAMENTE possuir uma Chave Primria que o campo ou o meio pela qual se distingue um registro dos outros.

Banco de Dados

DER Diagrama Entidade Relacionamento


Definio, Elementos, Identificao dos Elementos e Construo do DER.

DER Diagrama Entidade Relacionamento


Definio, Elementos, Identificao dos Elementos e Construo do DER

O DER um diagrama que tem a finalidade de modelar (ou representar) uma situao real de maneira que todos possam entender esta situao para implement-la independente de Mquina/Equipamento, Software, ...

Os Elementos principais de um DER so:

Banco de Dados

DER Diagrama Entidade Relacionamento


Definio, Elementos, Identificao dos Elementos e Construo do DER

DER Diagrama Entidade Relacionamento


Definio, Elementos, Identificao dos Elementos e Construo do DER

Os Elementos principais de um DER so:


Cliente

Os Elementos principais de um DER so:


Cliente

Entidade

Entidade Entidade Fraca

Dependente

Banco de Dados

DER Diagrama Entidade Relacionamento


Definio, Elementos, Identificao dos Elementos e Construo do DER

Banco de Dados

DER Diagrama Entidade Relacionamento


Definio, Elementos, Identificao dos Elementos e Construo do DER

Os Elementos principais de um DER so:


Cliente

Os Elementos principais de um DER so:


Cliente

Entidade

Entidade Entidade Fraca Relacionamento Generalizao

Dependente

Solicita

Relacionamento

Solicita

Banco de Dados

DER Diagrama Entidade Relacionamento


Definio, Elementos, Identificao dos Elementos e Construo do DER

Banco de Dados

DER Diagrama Entidade Relacionamento


Definio, Elementos, Identificao dos Elementos e Construo do DER

Os Elementos principais de um DER so:


Cliente

Os Elementos principais de um DER so:


Cliente

Entidade Entidade Fraca Relacionamento

Entidade Relacionamento

Dependente

1:1 1:N N:N

Cardinalidades

Solicita

Solicita

Atributos 1:1 1:N N:N Cardinalidades Generalizao

Banco de Dados

DER Diagrama Entidade Relacionamento


Definio, Elementos, Identificao dos Elementos e Construo do DER

Banco de Dados

DER Diagrama Entidade Relacionamento


Definio, Elementos, Identificao dos Elementos e Construo do DER

Os Elementos principais de um DER so:


Entidade Relacionamento Atributos Cardinalidades

Conforme a descrio: ... onde os Clientes solicitam os seus Produtos, conforme os tipos, modelos e pela quantidade...

Cliente

Solicita

1:1 1:N N:N

Podemos construir (ou representar) a situao da seguinte forma:

Banco de Dados

Banco de Dados Banco de Dados

DER Diagrama Entidade Relacionamento


Definio, Elementos, Identificao dos Elementos e Construo do DER

Exerccios
Com suas palavras defina:
a) b)

1.

Banco de Dados; Entidade ou Tabela;

2.

Defina as tabelas e seus atributos dos casos a seguir, e insira 5 registros em cada uma das tabelas:
a)

Conforme a descrio: ... onde os Clientes solicitam os seus Produtos, conforme os tipos, modelos e pela quantidade...
Verbo

Uma empresa deseja automatizar seu cadastro de clientes, junto com o setor de vendas. O gerente do setor de estoque ficou com muita inveja do sistema informatizado do cadastro de clientes do exerccio anterior. Sabe-se que o setor de estoque tem uma relao direta com os fornecedores, os quais fornecem os produtos para venda. Uma escola precisa automatizar todo seu sistema. Defina as tabelas necessrias para criar o banco de dados.

b)

c)

Podemos construir (ou representar) a situao da seguinte forma:

Banco de Dados

DER Diagrama Entidade Relacionamento


Definio, Elementos, Identificao dos Elementos e Construo do DER

DER Diagrama Entidade Relacionamento


Definio, Elementos, Identificao dos Elementos e Construo do DER

Conforme a descrio: ... onde os Clientes solicitam os seus Produtos, conforme os tipos, modelos e pela quantidade...
Verbo Relacionamento
Solicita

Conforme a descrio: ... onde os Clientes solicitam os seus Produtos, conforme os tipos, modelos e pela quantidade...
Substantivo
Solicita

Podemos construir (ou representar) a situao da seguinte forma:

Podemos construir (ou representar) a situao da seguinte forma:

Banco de Dados

DER Diagrama Entidade Relacionamento


Definio, Elementos, Identificao dos Elementos e Construo do DER

Banco de Dados

DER Diagrama Entidade Relacionamento


Definio, Elementos, Identificao dos Elementos e Construo do DER

Conforme a descrio: ... onde os Clientes solicitam os seus Produtos, conforme os tipos, modelos e pela quantidade...
Substantivo Entidades
Cliente Solicita Produtos

Conforme a descrio: ... onde os Clientes solicitam os seus Produtos, conforme os tipos, modelos e pela quantidade...,
Adjetivos
Cliente Solicita Produtos

Podemos construir (ou representar) a situao da seguinte forma:

Podemos construir (ou representar) a situao da seguinte forma:

Banco de Dados

DER Diagrama Entidade Relacionamento


Definio, Elementos, Identificao dos Elementos e Construo do DER

Banco de Dados

DER Diagrama Entidade Relacionamento


Definio, Elementos, Identificao dos Elementos e Construo do DER

Conforme a descrio: ... onde os Clientes solicitam os seus Produtos, conforme os tipos, modelos e pela quantidade...,
Adjetivos Atributos Entidades
Cliente Solicita Produtos

Conforme a descrio: ... onde os Clientes solicitam os seus Produtos, conforme os tipos, modelos e pela quantidade...,
Importante:
Como toda Entidade/Tabela deve Possuir uma Chave Primria...
Cliente Solicita Produtos

Tipos Modelos Quantidade

Tipos Modelos Quantidade

Podemos construir (ou representar) a situao da seguinte forma:

Podemos construir (ou representar) a situao da seguinte forma:

Banco de Dados

DER Diagrama Entidade Relacionamento


Definio, Elementos, Identificao dos Elementos e Construo do DER

Banco de Dados

DER Diagrama Entidade Relacionamento


Definio, Elementos, Identificao dos Elementos e Construo do DER

Conforme a descrio: ... onde os Clientes solicitam os seus Produtos, conforme os tipos, modelos e pela quantidade...,
Importante:
Como toda Entidade/Tabela deve Possuir uma Chave Primria...
Cliente Cdigo Cliente Solicita Produtos Cdigo Produto Tipos Modelos Quantidade

Conforme a descrio: ... onde os Clientes solicitam os seus Produtos, conforme os tipos, modelos e pela quantidade...,
Dica...
Advrbios Atributos (Relacionamento)...
Cliente Cdigo Cliente Solicita Produtos Cdigo Produto Tipos Modelos Quantidade

Podemos construir (ou representar) a situao da seguinte forma:

Podemos construir (ou representar) a situao da seguinte forma:

Banco de Dados

DER Diagrama Entidade Relacionamento


Cardinalidades

Banco de Dados

DER Diagrama Entidade Relacionamento


Cardinalidades

1:1 quando o elemento da entidade X est relacionado com apenas um elemento da entidade Y (relacionada com ela) e vice versa.

1:1 quando o elemento da entidade X est relacionado com apenas um elemento da entidade Y (relacionada com ela) e vice versa. 1:N quando o elemento da entidade X est relacionado com vrios elementos da entidade Y (relacionada com ela), mas o elemento da entidade Y est relacionado com apenas este UM elemento da entidade X.

Banco de Dados

DER Diagrama Entidade Relacionamento


Cardinalidades

Banco de Dados

DER Diagrama Entidade Relacionamento


Aplicando a Cardinalidade...

1:1 quando o elemento da entidade X est relacionado com apenas um elemento da entidade Y (relacionada com ela) e vice versa. 1:N quando o elemento da entidade X est relacionado com vrios elementos da entidade Y (relacionada com ela), mas o elemento da entidade Y est relacionado com apenas este UM elemento da entidade X. N:N quando vrios elementos da entidade X esto relacionados com vrios elementos da entidade Y (relacionada com ela) e os elementos da entidade Y tambm esto relacionados com vrios elementos da entidade X.

Entendendo a Cardinalidade no modelo proposto...


O Cliente solicita vrios produtos ....

Cliente Cdigo Cliente

Solicita

Produtos Cdigo Produto Tipos Modelos Quantidade

Podemos aplicar a Cardinalidade no diagrama da seguinte maneira...

Banco de Dados

DER Diagrama Entidade Relacionamento


Aplicando a Cardinalidade...

Banco de Dados

DER Diagrama Entidade Relacionamento


Aplicando a Cardinalidade...

Entendendo a Cardinalidade no modelo proposto...


O Cliente solicita vrios produtos ....

Entendendo a Cardinalidade no modelo proposto...


O Cliente solicita vrios produtos e os produtos podem ser solicitados por vrios clientes.

Cliente Cdigo Cliente

Solicita

Produtos Cdigo Produto Tipos Modelos Quantidade

Cliente Cdigo Cliente

Solicita

Produtos Cdigo Produto Tipos Modelos Quantidade

Podemos aplicar a Cardinalidade no diagrama da seguinte maneira...

Podemos aplicar a Cardinalidade no diagrama da seguinte maneira...

Banco de Dados

DER Diagrama Entidade Relacionamento


Aplicando a Cardinalidade...

Banco de Dados

DER Diagrama Entidade Relacionamento


Chave Estrangeira, Alternativa e Secundria, ...

Entendendo a Cardinalidade no modelo proposto...


O Cliente solicita vrios produtos e os produtos podem ser solicitados por vrios clientes.

Definindo...
Chave Estrangeira o atributo que Chave Primria de uma Entidade que passa para a outra Entidade com a qual ela est relacionada. Formando assim um elo (ou o relacionamento) entre elas.
Cliente

Cliente

Solicita

Produtos Cdigo Produto Tipos Modelos Quantidade

Solicita

Produtos Cdigo Produto Tipos Modelos Quantidade

Cdigo Cliente

Cdigo Cliente

Podemos aplicar a Cardinalidade no diagrama da seguinte maneira...

Banco de Dados

DER Diagrama Entidade Relacionamento


Chave Estrangeira, Alternativa e Secundria, ...

Banco de Dados Banco de Dados

DER Diagrama Entidade Relacionamento


Chave Estrangeira, Alternativa e Secundria, ...

Definindo...
Chave Estrangeira o atributo que Chave Primria de uma Entidade que passa para a outra Entidade com a qual ela est relacionada. Formando assim um elo (ou o relacionamento) entre elas. N N Produtos Chave Alternativa o Cliente atributo queSolicita vir a ser chave pode Cdigo Produto primria, ou seja, na falta Cdigo Cliente de um atributo para ser a chave Tipos Modelos primria da tabela este pode servir para fazer este papel. Quantidade Ex. CGC, CNPJ, etc.

Definindo...
Chave Estrangeira o atributo chave (primria) de uma Entidade que passa para a outra entidade a qual ela est relacionada. Formando assim um elo (ou o relacionamento) entre elas. N N Produtos Chave Alternativa o Cliente atributo queSolicita vir a ser chave pode Cdigo Produto primria, ou seja, na falta Cdigo Cliente de um atributo para ser a chave Tipos Modelos primria da tabela este pode servir para fazer este papel. Quantidade Ex. CGC, CNPJ, etc. Chave Secundria um segundo atributo que tambm chave numa tabela (Relacionada com Chave Estrangeira).

Banco de Dados

DER Diagrama Entidade Relacionamento


Chave Estrangeira...

DER Diagrama Entidade Relacionamento


Chave Estrangeira...

Dicas... Quando houver cardinalidade...


1:1 A Chave Primria de qualquer entidade poder ser passada para a a outra entidade relacionada (tornando-se Chave Estrangeira nesta Entidade que recebeu este atributo). Exemplo:
Funcionrio

Dicas... Quando houver cardinalidade...


1:N A entidade que possui cardinalidade N tende a receber a Chave Primria (tornando-se Chave Estrangeira nesta Entidade que recebe o atributo) da entidade que possui cardinalidade 1. Mas tambm pode ser da outra forma. 1 N Departamento Possui Exemplo: Empresa
Cdigo Empresa Cdigo Departamento Cdigo Empresa

Possui

Titulo Eleitor Cdigo Ttulo Seo Zona Cdigo Funcionrio

Cdigo Funcionrio Cdigo Ttulo

ou

Chave Estrangeira
Podemos construir (ou representar) a situao da seguinte forma:

Chave Estrangeira
Podemos construir (ou representar) a situao da seguinte forma:

Banco de Dados

DER Diagrama Entidade Relacionamento


Chave Estrangeira...

Banco de Dados

DER Diagrama Entidade Relacionamento


Chave Estrangeira...

Dicas... Quando houver cardinalidade...


N:N H casos em que tambm qualquer uma das Entidades envolvidas pode receber a Chave Primria (tornando-se Chave Estrangeira nesta Entidade que recebe o atributo) da outra Entidade. Depende muito de se avaliar a situao, mas...
Mdico

Dicas... Quando houver cardinalidade...


N:N ... muitas vezes, acaba-se gerando uma nova Entidade (Chamada Atributos de Relacionamento) e passando para ela as Chaves Primrias de cada entidade envolvida. (Principalmente quando existem muitas se relacionando)...
Mdico

Consulta

Paciente Cdigo Paciente Cd.Mdico

Consulta

Paciente Cdigo Paciente

Cdigo Mdico Cd.Paciente

Cdigo Mdico

ou

Chave Estrangeira
Podemos construir (ou representar) a situao da seguinte forma: Podemos construir (ou representar) a situao da seguinte forma:

Banco de Dados

DER Diagrama Entidade Relacionamento


Chave Estrangeira...

Banco de Dados Banco de Dados

DER Diagrama Entidade Relacionamento


Normalizao...

Conclundo...
N:N ... muitas vezes, acaba-se gerando uma nova Entidade (Chamada Atributos de Relacionamento) e passando para ela as Chaves Primrias de cada entidade envolvida. (Principalmente quando existem muitas se relacionando)...
Mdico

Definindo Normalizao ou Formas Normais...


Uma Forma Normal (ou Normalizao) uma regra que deve ser obedecida por uma tabela para que esta seja considerada bem projetada.
N N H diversas formas normais, isto , Solicita diversas regras, cada Cliente Produtos vez mais rgidas, para verificar tabelas relacionais.Cdigo Produto No caso Cdigo Cliente Tipos deste trabalho, vamos considerar quatro formas normais. Modelos Quantidade As formas normais so denominadas simplesmente primeira, segunda, terceira e quarta forma normal, abreviadamente 1FN, 2FN, 3FN e 4FN

Consulta

Paciente Cdigo Paciente

Cdigo Mdico Cd.Paciente Cd.Mdico

Nova Entidade: Histrico Consultas


Podemos aplicar a cardinalidade no modelo adotado da seguinte forma:

Banco de Dados

DER Diagrama Entidade Relacionamento


Normalizao...

DER Diagrama Entidade Relacionamento


Normalizao...

1a. Forma Normal


Aplicar a 1a. Forma Normal significa particionar os atributos que no so chaves de modo a ficarem indivisveis. Todas as entidades devem satisfazer esta forma.
Cliente

1a. Forma Normal


Exemplo:

Solicita

Produtos Cdigo Produto Tipos Modelos Quantidade

Cliente

Solicita

Produtos Cdigo Produto Tipos Modelos Quantidade

Cdigo Cliente Cd.Cliente Cd.Produtos Data Solicitao

Cdigo Cliente Nome Contato

Cd.Cliente Cd.Produtos Data Solicitao

Banco de Dados

DER Diagrama Entidade Relacionamento


Normalizao...

Banco de Dados

DER Diagrama Entidade Relacionamento


Normalizao...

1a. Forma Normal


Exemplo:

1a. Forma Normal


Exemplo:

Cliente

Solicita

Produtos Cdigo Produto Tipos Modelos Quantidade

Cliente

Solicita

Produtos Cdigo Produto Tipos Modelos Quantidade

Cdigo Cliente Nome Contato

Cd.Cliente Cd.Produtos Data Solicitao

Cdigo Cliente Nome Contato Endereo Numero Bairro CEP

Cd.Cliente Cd.Produtos Data Solicitao

Banco de Dados

DER Diagrama Entidade Relacionamento


Normalizao...

Banco de Dados

DER Diagrama Entidade Relacionamento


Normalizao...

1a. Forma Normal


Exemplo:

2a. Forma Normal


Aplicar a 2a. Forma Normal significa particionar os atributos das Entidades de modo que os atributos no chaves sejam dependentes de atributos que so chaves (ou podem ser chaves) desta nova Entidade (Melhor dizendo, N N Cliente Solicita Produtos que sero chaves em outra nova entidade).
Cdigo Cliente Nome Endereo Numero Bairro CEP Cd.Cliente Cd.Produtos Data Solicitao Cdigo Produto Tipos Modelos Quantidade

Cliente

Solicita

Produtos Cdigo Produto Tipos Modelos Quantidade

Cdigo Cliente Nome Endereo Numero Bairro CEP

Cd.Cliente Cd.Produtos Data Solicitao

Banco de Dados

DER Diagrama Entidade Relacionamento


Normalizao...

Banco de Dados

DER Diagrama Entidade Relacionamento


Normalizao...

2a. Forma Normal


Exemplo:

2a. Forma Normal


Exemplo:

Cliente

Solicita

Produtos Cdigo Produto Tipos Modelos Quantidade

Cliente

Solicita

Produtos Cdigo Produto Tipos Modelos Quantidade

Cdigo Cliente Nome Endereo Numero Bairro CEP Conta Corrente Saldo Conta Corrente Agncia Endereo Agncia

Cd.Cliente Cd.Produtos Data Solicitao

Cdigo Cliente Nome Endereo Numero Bairro CEP Conta Corrente Saldo Conta Corrente Agncia Endereo Agncia

Cd.Cliente Cd.Produtos Data Solicitao

Banco de Dados

DER Diagrama Entidade Relacionamento


Normalizao...

Banco de Dados

DER Diagrama Entidade Relacionamento


Normalizao...

2a. Forma Normal


Exemplo:

3a. Forma Normal


Aplicar a 3a. Forma Normal significa particionar os atributos dessas novas Entidades (obtidas na aplicao da 2a. FN) de modo que os atributos no chaves sejam dependentes de atributos que tambm no so chaves N N N N Contas Possui Cliente Solicita Produtos desta nova Entidade (Melhor dizendo, que no o so mas Conta Corrente Cdigo Cliente Cdigo Produto sero Conta Corrente chaves nessa nova entidade). Saldo Nome Cd.Cliente Tipos
Agncia Endereo Agncia Cdigo Cliente Endereo Numero Bairro CEP Cd.Produtos Data Solicitao Modelos Quantidade

Contas

Possui

Cliente

Solicita

Produtos Cdigo Produto Tipos Modelos Quantidade

Conta Corrente Saldo Conta Corrente Agncia Endereo Agncia Cdigo Cliente

Cdigo Cliente Nome Endereo Numero Bairro CEP

Cd.Cliente Cd.Produtos Data Solicitao

Chave Estrangeira

10

Banco de Dados

DER Diagrama Entidade Relacionamento


Normalizao...

Banco de Dados

DER Diagrama Entidade Relacionamento


Normalizao...

3a. Forma Normal


Exemplo:

3a. Forma Normal


Exemplo:

Contas

Possui

Cliente

Solicita

Produtos Cdigo Produto Tipos Modelos Quantidade

Contas

Possui

Cliente

Solicita

Produtos Cdigo Produto Tipos Modelos Quantidade

Conta Corrente Saldo Conta Corrente Agncia Endereo Agncia Cdigo Cliente

Cdigo Cliente Nome Endereo Numero Bairro CEP

Cd.Cliente Cd.Produtos Data Solicitao

Conta Corrente Saldo Conta Corrente Agncia Endereo Agncia Cdigo Cliente

Cdigo Cliente Nome Endereo Numero Bairro CEP

Cd.Cliente Cd.Produtos Data Solicitao

Banco de Dados

DER Diagrama Entidade Relacionamento


Normalizao...

Banco de Dados

DER Diagrama Entidade Relacionamento


Normalizao...

3a. Forma Normal


Exemplo:

4a. Forma Normal


Aplicar a 4a. Forma Normal consiste em particionar os atributos das tabelas de maneira a no ficar nenhum dado nulo em demasia. Melhor dizendo, evitar (ao mximo) que as tabelas fiquem com os valores/contedos dos seus N N N N Contas Solicita Produtos campos emPossui brancos ou Cliente vazios.
Conta Corrente Saldo Conta Corrente Cdigo Cliente Cdigo Agncia Cdigo Cliente Nome Endereo Numero Bairro CEP Cd.Cliente Cd.Produtos Data Solicitao Cdigo Produto Tipos Modelos Quantidade

Contas

Possui

Cliente

Solicita

Produtos Cdigo Produto Tipos Modelos Quantidade

N
Pertence

Conta Corrente Saldo Conta Corrente Cdigo Cliente Cdigo Agncia

1
Agncia

Cdigo Cliente Nome Endereo Numero Bairro CEP

Cd.Cliente Cd.Produtos Data Solicitao

Pertence

1
Agncia Cdigo Agncia Endereo Agncia

Chave Estrangeira
Cdigo Agncia Endereo Agncia

Banco de Dados

DER Diagrama Entidade Relacionamento


Normalizao...

Banco de Dados

DER Diagrama Entidade Relacionamento


Normalizao...

Conclundo...
Na modelagem final teremos as seguintes Tabelas: Agncias, Contas, Clientes, Produtos e N N N Contas Possui Cliente Solicita Solicitao Clientes
Conta Corrente Saldo Conta Corrente Cdigo Cliente Cdigo Agncia Cdigo Cliente Nome Endereo Numero Bairro CEP

Conclundo...
Na modelagem final teremos as seguintes Tabelas e seus Atributos: Agncias (CdigoAgncia, EndereoAgncia,...); Contas (ContaCorrente, SaldoCC, CdigoCliente, CdigoAgncia,...); Clientes (CdigoCliente, Nome, Endereo, Nmero, Bairro, CEP,...); Produtos (CdigoProduto, Tipos, Modelos, Quantidade,...). N N N N Contas Possui Cliente Solicita Produtos Solicitao Clientes (CdCliente, CdProdutos, DataSolicitao,...).
Conta Corrente Saldo Conta Corrente Cdigo Cliente Cdigo Agncia Cdigo Cliente Nome Endereo Numero Bairro CEP Cd.Cliente Cd.Produtos Data Solicitao Cdigo Produto Tipos Modelos Quantidade

Produtos Cdigo Produto Tipos Modelos Quantidade

Cd.Cliente Cd.Produtos Data Solicitao

Pertence

Pertence

1
Agncia Cdigo Agncia Endereo Agncia

1
Agncia Cdigo Agncia Endereo Agncia

11

Banco de Dados

DER Diagrama Entidade Relacionamento


Tipos de Atributos...

Banco de Dados Banco de Dados Banco de Dados

DER Diagrama Entidade Relacionamento


Tipos de Atributos...

Tipos do MySQL...
O MySQL suporta um certo nmero de TIPOS de campos que podem ser agrupados em trs categorias: Tipos Numricos, Tipos de Data e Hora, Tipos String (caracteres).

Tipos do MySQL...
Tipos Numricos
INTEGER [(M)] = Representa um inteiro de tamanho normal TINYINT [(M)] = Representa um inteiro de tamanho muito pequeno SMALLINT [(M)] = Representa um inteiro de tamanho pequeno MEDIUMINT [(M)] = Representa um inteiro de tamanho mdio BIGINT [(M)] = Representa um inteiro grande FLOAT [(M,D)] = Representa um nmero de ponto-flutuante com preciso simples DOUBLE [(M,D)] ou DOUBLE PRECISION [(M,D)] ou REAL [(M,D)] = Representa um nmero de ponto-flutuante com preciso dupla DECIMAL [(M,[D])] ou NUMERIC [(M,D)] = Representa um nmero de ponto-flutuante armazenado com um string (1 byte por digito, ponto decimal, ou sinal -)

Banco de Dados

DER Diagrama Entidade Relacionamento


Tipos de Atributos...

DER Diagrama Entidade Relacionamento


Tipos de Atributos...

Tipos do MySQL...
Tipos Numricos Definindo...
Tipo
INTEGER [(M)] TINYINT [(M)] SMALLINT [(M)] MEDIUMINT [(M)] BIGINT [(M)] FLOAT [(M,D)]

Tipos do MySQL...
Tipos Data e Hora
DATE = Representa uma data no formato YYYY-MM-DD DATETIME = Representa uma combinao de data e hora no formato YYYY-MM-DD HH:MM:SS TIME = Representa um horrio no formato HH:MM:SS YEAR = Representa um ano no horrio YYYY TIMESTAMP [(M)] = Representa data e hora corrente no formato YYYYMMDDhhmmss ou TIMESTAMP (14) = YYYYMMDDHHMMSS TIMESTAMP (12) = YYMMDDHHMMSS TIMESTAMP (10) = YYMMDDHHMM TIMESTAMP (8) = YYYYMMDD TIMESTAMP (6) = YYMMDD TIMESTAMP (4) = YYMM TIMESTAMP (2) = YY

Bytes
4 1 2 3 8 4

De

At

-2147483648 2147483647 -128 127 -32768 32767 -8388608 8388607 -9223372036854775808 9223372036854775807 -3.402823466E+38 1.175494351E-38, 0 e 1.175494351E-38 3.402823466E+38

DOUBLE [(M,D)] DOUBLE PRECISION [(M,D)] REAL [(M,D)] 8

-1.7976931348623157E+308 2.2250738585072014E-308 -1.7976931348623157E+308 2.2250738585072014E-308

2.2250738585072014E-308, 0 e 1.7976931348623157E+308 2.2250738585072014E-308, 0 e 1.7976931348623157E+308

DECIMAL [(M,[D])]

M (<3.23) ou M+2

Banco de Dados

DER Diagrama Entidade Relacionamento


Tipos de Atributos...

DER Diagrama Entidade Relacionamento


Tipos de Atributos...

Tipos do MySQL...
Tipos Data e Hora Definindo...
Tipo
DATE DATETIME TIME YEAR TIMESTAMP

Tipos do MySQL...
Tipos String (Caracteres ou Alfanumricos)
CHAR [(M)] = Representa uma String de caracteres de tamanho fixo (0 a 255 caracteres) VARCHAR [(M)] = Representa uma String de caracteres de tamanho varivel (0 a 255 caracteres) BLOB ou TEXT = Representa um valor BLOB (ou texto) de tamanho normal (0 a 65535 caracteres) TINYBLOB ou TINYTEXT = Representa um valor de tamanho pequeno (0 a 255 caracteres) MEDIUMBLOB ou TINYTEXT = Representa um valor de tamanho mdio (0 a 16777215 caracteres) LONGBLOB ou LONGTEXT = Representa um valor de tamanho grande (0 a 4294967295 caracteres) ENUM (valor1,valor2,...) = Representa uma enumerao. Permite especificar uma lista de valores, dos quais um pode ser atribudo coluna. SET (valor1,valor2,...) = Representa um grupo. Permite especificar uma lista de valores, dos quais um ou mais podem ser atribudo coluna.

Bytes
3 8 3 1 4

De
1000-01-01 1000-01-01 00:00:00 -838:59:59 1900 19700101000000

At
9999-12-31 9999-12-31 23:59:59 -838:59:59 2155 algum dia do ano 2037

12

Banco de Dados

DER Diagrama Entidade Relacionamento


Tipos de Atributos...

Tipos do MySQL...
Tipos String (Caracteres/Alfanumricos) Definindo...
Tipo
CHAR VARCHAR BLOB TEXT TINYTEXT/BLOB TINYTEXT/BLOB LONGTEXT/BLOB ENUM SET

Bytes
M M+1 M+2 M+21 M+1 M+3 M+4 1 p/enum de 2 1 p/sets de 2 3 4 8

De
0 0 0 0 0 0 0 1 256 1 9 17 25 33

At
255 255 65535 65535 255 16777215 4294967295 255 65535 8 membros 16 membros 24 membros 32 membros 64 membros

13