Академический Документы
Профессиональный Документы
Культура Документы
E2 Bada
E2 Bada
DE DADOS
Gratuliano Lucena
E-book 2
Neste E-Book:
INTRODUÇÃO���������������������������������������������� 4
MODELO LÓGICO E PROJETO
FÍSICO DE BANCO DE DADOS��������������� 6
PROJETOS CONCEITUAL X LÓGICO
X FÍSICO��������������������������������������������������������� 8
Entendimento do Projeto Conceitual����������������������8
Entendimento do Projeto Lógico ���������������������������9
Conceitos de Metodologia Orientada a Objetos����9
Entidades x Atributos x Relacionamento ����������� 11
Entidades��������������������������������������������������������������� 12
Atributos ��������������������������������������������������������������� 13
Relacionamentos ������������������������������������������������� 14
RELACIONAMENTOS COM
ENTIDADES�������������������������������������������������15
RELACIONAMENTOS COM
ATRIBUTOS �������������������������������������������������17
CARDINALIDADES �����������������������������������18
CARDINALIDADES DE ATRIBUTOS ���20
IDENTIFICADOR ATRIBUTO CHAVE
ÚNICA�����������������������������������������������������������24
Exemplo de um Projeto Lógico na terceira
Forma Normal ������������������������������������������������������ 26
2
Conceitos do Projeto Físico �������������������������������� 29
LINGUAGENS ENVOLVIDAS EM UM
SGBD ������������������������������������������������������������31
CRIAÇÃO DE SCRIPTS PARA
GERAÇÃO DE BANCO DADOS
FÍSICO�����������������������������������������������������������36
CONSIDERAÇÕES FINAIS��������������������� 40
SÍNTESE�������������������������������������������������������42
3
INTRODUÇÃO
É fundamental entender quais elementos compreen-
dem tanto o modelo lógico quanto o modelo físico
de banco de dados.
4
Após a aprovação do DER pela AD, a Administração
de Dados, por meio da ferramenta Case, cria automa-
ticamente um “script”, com comandos SQL, e o envia
para a área do Administrador de Banco de Dados
(DBA), e este se incumbe de dimensionar o espaço
em disco para comportar a necessidade do volume
de dados. E, então, executa o “script” fornecido pelo
AD para a criação dos bancos dados.
5
MODELO LÓGICO E
PROJETO FÍSICO DE
BANCO DE DADOS
Para se construir um banco de dados bem estrutu-
rado, há uma técnica chamada de modelagem de
dados, em que se analisam as regras de negócio de
forma científica – isso ajuda os técnicos de infor-
mática a entenderem a necessidade dos usuários.
6
co de dados por meio de um gerenciador de banco
de dados (SGBD).
7
PROJETOS
CONCEITUAL X
LÓGICO X FÍSICO
O objetivo aqui é conceituar o que contempla cada
um dos projetos: Conceitual, Lógico e Físico.
Entendimento do Projeto
Conceitual
O projeto conceitual compreende uma fase em que
o técnico de tecnologia da informação passa por
imersão para entendimento dos detalhes das ne-
cessidades do usuário, analisa cenários de proces-
sos, analisa volumes das informações, analisa os
requisitos funcionais das regras de negócios e não
funcionais, que envolvem necessidades para acesso
e atualização de dados.
8
modelar os bancos de dados e entra na fase de pro-
jeto lógico.
Entendimento do Projeto
Lógico
O projeto lógico é uma conversão da regra de negó-
cio em um modelo gráfico – em que podemos usar
ferramenta Case, que gera este artefato gráfico.
Conceitos de Metodologia
Orientada a Objetos
Todas as metodologias de desenvolvimento de sis-
temas – seja a estruturada, orientada a objetos, ágil
– têm a necessidade de modelagem de dados. A
orientada a objetos tem alguns conceitos comple-
mentares que integram com a modelagem de dados.
Dentre esses conceitos é interessante entender al-
guns pontos básicos, conforme ilustrado na figura 1.
9
a) CLASSE – Abstração de um conjunto de objetos
similares aos do mundo real, conforme exemplo na
figura 1. O livro tem características (tamanho, tipo)
mostradas nos objetos.
10
Classe
Livro
Objetos
Relatório
Anual
Dicionário
Entidades x Atributos x
Relacionamento
Existem três formas básicas para trabalhar a mode-
lagem de dados: uma é chamada de entidade e faz
referência a algum objeto do mundo real, concreto,
por exemplo, uma pessoa; ou abstrato, por exemplo,
um departamento. Outra é chamada de atributo, que
detalha cada informação relacionada às entidades.
E a terceira forma, sobre o relacionamento de de-
pendências entre as entidades ou entre os atributos.
11
objetivo e o sentido de cada informação. Juntando
tudo isso, é preciso trabalhar exaustivamente, com
muita atenção e concentração para alcançar um re-
sultado de sucesso.
Entidades
É um conjunto de objetos do mundo real sobre os
quais se deseja manter informações no banco de
dados.
Empregado
João
Pedro
Paulo
Maria
12
Um outro exemplo é para os objetos abstratos (um
departamento), conforme ilustrado na figura 3. Citar
conteúdos possíveis: Contabilidade, Financeiro,
Jurídico e Pessoal.
Departamento
Contabilidade
Financeiro
Jurídico
Pessoal
Atributos
Atributo é um dado, corresponde a cada informação
que compõe a entidade. Para cada atributo é neces-
sário identificar duas informações; dessas duas, uma
é referente à quantidade que comporta o conteúdo do
atributo; a outra é referente ao tipo do dado, que pode
ser numérico ou alfanumérico. O Atributo também
pode estar associado ao relacionamento.
Em um DER, uma entidade é representada por meio
de um retângulo que contém o nome da entidade.
O relacionamento é representado por um losango e,
13
dentro dele, vai o nome do relacionamento. Os atri-
butos, ilustrados na figura 4, são representados por
um traço mais um círculo. Quando o círculo estiver
preenchido, identifica um atributo chave; e quando o
círculo estiver vazio, identifica um atributo não chave.
Nome
Empregado Endereço
Salário
Descrição
Departamento
Número de
Funcionários
Relacionamentos
O relacionamento é um dos pontos importantes na
modelagem de dados, pois representa a arte de fazer
uma engenharia de dados com perfeição.
14
RELACIONAMENTOS
COM ENTIDADES
Na modelagem de dados, há um item que exige um
estudo minucioso para relacionar todas as entidades
envolvidas num modelo de dados. A solução disso
é analisar todas as dependências possíveis entre as
entidades; para isso, utiliza-se o atributo para verificar
a dependência.
A B
Nome do
Relacionamento
15
temos o atributo Setor. Analisando a figura, obser-
vamos que João trabalha no setor de Contabilidade,
e que o setor de Contabilidade tem um empregado
de nome João. Note que perguntamos da entidade
Empregado na direção da entidade Departamento,
e também perguntamos do Departamento na dire-
ção do Empregado. Há que se fazer a pergunta nas
2 direções, da esquerda (Empregado) para direita
(Departamento) e da direita (Departamento) para a
esquerda (Empregado).
João Contabilidade
Pedro Financeiro
Paulo Jurídico
Maria Pessoal
16
RELACIONAMENTOS
COM ATRIBUTOS
Como foi previamente dito, o atributo é o principal
mecanismo para analisar os relacionamentos entre
as entidades, levando em conta os conteúdos dos
atributos.
Instâncias
22/10/2007
Dr. Paulo Ana
05/02/2009
Dr. Flora José
20/03/2009
17
CARDINALIDADES
O modelo DER permite expressar cardinalidades mí-
nimas e máximas em cada relacionamento. A cardi-
nalidade mínima 1 também recebe a denominação
de “associação obrigatória”, já que ela indica que
o relacionamento deve obrigatoriamente associar
uma ocorrência de entidade a cada ocorrência da
entidade em questão.
18
mos ter várias contas (1 para N, um para muitos);
fazendo a pergunta ao contrário, que uma conta está
associada somente um cliente, um para um (1,1).
Podcast 1
19
CARDINALIDADES
DE ATRIBUTOS
Vamos analisar a cardinalidade do próprio atributo,
o quanto cada informação pode ter variação de con-
teúdo para cada atributo. Podemos classificar em
vários tipos de análises.
CPF
Empregado Nome
Endereço
20
um número de telefone comercial e tem um número
de telefone de contato. Juntando os telefones, temos
cinco números de telefones, por isso esse atributo é
considerado multivalorado.
CPF
Nome
Empregado
Endereço
Telefone (0,N)
N 1
Supervisiona
João Supervisor
Pedro
Paulo
Maria
Supervisionado
21
d) Relacionamento Binário: o relacionamento binário
envolve a associação de duas entidades. Podemos
classificar os relacionamentos binários de várias
maneiras, em N:N (muitos-para-muitos), 1:N (um-
-para-muitos) e 1:1 (um-para-um). O relacionamento
entre as entidades Empregado e Departamento, con-
forme mostrado na figura 12, tem uma associação
de relacionamento perguntando do empregado na
direção do departamento, na ordem 1 para N (um-
-para-muitos), e perguntando do departamento na
direção do empregado, deduzimos que um depar-
tamento qualquer só tem um empregado, na ordem
de 1 para 1 (um-para-um).
22
x Conta Corrente, juntando os atributos-chave CPF
da entidade Cliente com o atributo Número Conta da
entidade Conta Corrente. Essa junção deverá fazer
parte da nova entidade Cliente x Conta Corrente; pelo
fato desta junção ser chave em outras entidades, cha-
mamos esses atributos de chave estrangeira, e ainda
juntamos com a chave estrangeira mais um atribu-
to: Data de Lançamento, próprio da tabela Cliente x
Conta. A entidade Cliente x Conta Corrente terá as
chaves compostas dos atributos CPF do Cliente +
Número da Conta + Data Lançamento.
Conta
Cliente N Possui N Corrente
Nome Descrição
CPF Numero
Conta
Cliente x Conta
Corrente
23
IDENTIFICADOR
ATRIBUTO CHAVE ÚNICA
Cada entidade deve ter um identificador, ou seja, um
atributo-chave: é o conjunto de um ou mais atributos
cujos valores servem para distinguir uma ocorrência
única em toda entidade. Exemplo: o atributo CPF está
com o círculo do Cliente preenchido de vermelho e
também os atributos Número Corredor + Número
Prateleira, formando uma chave composta. Essa
chave composta garante uma chave como único
conteúdo dentro da entidade Prateleira, conforme
ilustrado na figura 14, representação do modelo.
CPF
Cliente Nome
Endereço
Número
Corredor
Departamento
Número
Prateleira
Figura 14: Autorrelacionamento. Fonte: Elaboração própria.
24
Os conceitos entre Entidade Forte e Entidade Fraca:
na Entidade Forte há um atributo que pode ser chave
única para toda a entidade. A figura 15 mostra que
o CPF é um atributo que garante ser chave única na
entidade EMPREGADO. Nessa situação, podemos
considerar a entidade DEPENDENTE como entidade
forte, enquanto que na entidade DEPENDENTE, o atri-
buto CPF Empregado não é suficiente para garantir
como chave única; nesse caso, precisamos criar um
atributo artificial – que é chamado de artificial por-
que não veio da regra de negócio, é idealizado pelo
técnico que cria o modelo de dados. Esse atributo
chama-se número do dependente. Com os atributos,
podemos agora ter uma chave única para a entida-
de DEPENDENTE, constituído por chave composta.
Exemplo: CPF 1 – Esposa (Número de Dependente
1), CPF 1 – Filho 1 (Número de Dependente 2), CPF
1 – filho 2 (Número de Dependente 3), com isso, ter-
mos as chaves: 11, 12, 13, o que garante a unicidade
de chave na entidade.
25
Entidade Fraca
A entidade não tem um
Entidade Forte
atributo que pode ser chave
A entidade tem um única, é necessário juntar com
atributo (CPF Empregado) outro atributo para formar a
que pode ser chave única chave única, fica assim CPF
Empregado + Número
Dependente (Chave
composta).
Nome
Número
Dependente
CPF
Endereço
CPF Empregado
Empregado
Nome
26
o modelo de dados, para possibilitar a eliminação
de dados redundantes (duplicidades), e também
para conceber uma construção de atributos-chave
que permitam um acesso ou atualização dos dados
com níveis de desempenho que venha a garantir um
tempo de resposta com excelência. As figuras em
cor azul são os meios de relacionamentos entre as
entidades.
27
CPF Prof
Professor X
Código Curso
Curso
Data Validade
Código
Curso
Ministra N Curso
Descrição
N Curso
N
CPF Prof
Professor Nome Prof Pertence
Endereço Prof
N
Código Curso
Ministra Curso X
Código Curso
Disciplina
Data Validade
CPF Prof
Professor X Código
Disciplina Disciplina
Data
N
Validade Código
Disciplina
1 Nome
N Disciplina Disciplina
Atuação Números
N Crédito
N
N N
CPF Prof
28
Conceitos do Projeto Físico
O projeto físico tem como origem o projeto lógico,
que é a modelagem de dados, o chamado Diagrama
de Entidade e Relacionamento (DER), que pode ser
construído com a ferramenta Case DBDesignerfork.
Podemos observar que todo atributo-chave tem, an-
tes do atributo, um desenho de chave e que, quando
temos chaves compostas, há uma divisão em que
acima ficam os atributos-chave e abaixo ficam os atri-
butos não chave – com um desenho de um losango
antes do atributo, conforme ilustrado na figura 18.
Entidade A Entidade B
29
vez na entidade “B” (N-Muitos); portanto, temos uma
relação de 1:N (um-para-muitos).
30
LINGUAGENS ENVOLVIDAS
EM UM SGBD
Antes de gerarmos o projeto físico, temos de pro-
videnciar alguns procedimentos. É preciso ter um
gerenciador de Banco de Dados (SGBD) e um ge-
renciador de servidor. Devemos seguir os seguintes
passos:
Instale o XAMP;
31
Figura 19: Ativação dos servidores XAMP. Fonte: Elaboração pró-
pria.
1. Instale o Workbench;
32
Figura 20: Acessar o MySQL. Fonte: Elaboração própria.
33
Figura 22: Exemplo para criação de Tabelas, Atributos e Tipos,
Índices e Relacionamentos. Fonte: Elaboração própria.
34
Figura 23: Exemplo para criação de Conexão DBDesignerfork com
MySQL. Fonte: Elaboração própria.
35
CRIAÇÃO DE SCRIPTS
PARA GERAÇÃO DE
BANCO DADOS FÍSICO
Na própria ferramenta DBDesignerfork, utilizamos
todo o modelo lógico para gerar um script, confor-
me modelo na figura 24, para executar na ferramen-
ta Workbench para criar o projeto físico com todas
as tabelas. Nesse caso, é utilizada a linguagem do
SQL – chamada de DDL “Data Definition Language”.
Linguagem usada no modelo lógico:
36
Disciplina_Codigo INTEGER UNSIGNED NOT NULL
AUTO_INCREMENT,
PRIMARY KEY(Disciplina_Codigo));
PRIMARY KEY(Professor_CPF));
PRIMARY KEY(Turma_Numero));
37
PRIMARY KEY(Curso_Codigo));
PRIMARY KEY(Aluno_CPF));
INDEX ProfessorXCurso_FKIndex1(Professor_CPF) ,
INDEX ProfessorXCurso_FKIndex2(Curso_Codigo),
FOREIGN KEY(Professor_CPF)
REFERENCES Professor(Professor_CPF)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
FOREIGN KEY(Curso_Codigo)
REFERENCES Curso(Curso_Codigo)
ON DELETE NO ACTION
38
ON UPDATE NO ACTION);
Podcast 2
39
CONSIDERAÇÕES FINAIS
É essencial entender os conceitos e os artefatos
que compõem o modelo lógico e o modelo físico
de banco de dados. O Modelo Lógico abrange, em
primeiro lugar, entender a regra de negócio, que é
compreender os requisitos dos usuários, é o ponto
de partida para desenhar o modelo de dados que
compõe o modelo lógico.
40
Dados (DBA) que toma como base o modelo de
dados.
Referências
Bibliográficas
& Consultadas
41
SÍNTESE
DE
ATH
Banco de
YST
Dados
Projetos:
• Conceitual.
• Lógico.
• Físico.