Escolar Documentos
Profissional Documentos
Cultura Documentos
DBDesigner 4
DBDesigner 4
DBDesigner 4
O DBDesigner 4 uma ferramenta CASE (Computer-Aided Software Engineering) voltada
para a modelagem de dados dos sistemas.
Para utiliz-lo necessrio, primeiramente, criar o Modelo Conceitual dos dados do sistema.
Como exemplo, ser utilizado o seguinte Modelo Conceitual:
NomeFunc
DescProj
IdProj
PROJETO
CPF
0,M
1,N
composto
FUNCIONRIO
CodDep
0,N
alocado
1,1
NomeDep
DEPARTAMENTO
Horas_Trab
Local
DuraoPrev
C
NomeBen
BENEFICIRIO
CNPJ
0,1
indicado
CPFBen
1,1 FUNCIONRIO
PRPRIO
EndFunc
FUNCIONRIO 1,N
TERCEIRIZADO
CargaHoraria
pertence
IDTerc
1,1
NomeEmp
EMPRESA
PRESTADORA
DE SERVIO
TelEmp
EndEmp
MatrFunc
Funcionamento do DBDesigner 4
Antes de modelar os dados utilizando o DBDesigner 4 importante conhecer como ele
funciona, em termos de derivao do Modelo Conceitual para o Modelo Lgico.
Como j vimos, existem diversas opes para derivar um modelo para o outro. O
DBDesgner 4 tem as suas opes bem definidas e que devemos conhecer.
1. O Modelo Conceitual j deve estar normalizado, pois o DBDesigner 4 apenas modela e
no normaliza as tabelas.
2. Derivao de relacionamentos 1:1
O DBDesigner 4 cria uma cpia da chave primria de uma das tabelas como chave
estrangeira da outra tabela. Voc deve decidir qual das tabelas deve receber a chave
estrangeira antes de utilizar a ferramenta.
3. Derivao de relacionamentos 1:N
O DBDesigner 4 cria uma cpia da chave primria da tabela com cardinalidade 1 como
chave estrangeira da tabela com cardinalidade N.
4. Derivao de relacionamentos M:N
O DBDesigner 4 cria uma terceira tabela que liga as tabelas com cardinalidade M e N.
Nessa tabela sero usadas cpias das chaves primrias das duas tabelas, usadas como
DBDesigner 4
DBDesigner 4
Surgir um cursor em forma de mo com um dedo apontando. Basta clicar no local onde
voc deseja que a tabela seja criada.
Uma dica criar as tabelas nas mesmas posies onde voc criou as entidades no
Modelo Conceitual (ajuda a organizar o modelo resultante).
5. Na rea de trabalho da ferramenta aparecer o seguinte:
Isso indica que a tabela foi criada. Mas, temos que associar as caractersticas das
entidades do Modelo Conceitual a cada uma das tabelas criadas.
OBS: Caso deseje excluir alguma tabela criada, voc deve clicar no boto Delete
(barra de ferramentas vertical). O cursor ficar com a forma de uma borracha e ento
basta clicar na tabela que voc deseja excluir do modelo. Para voltar operao normal
(cursor normal) clicar no boto Pointer
6. Para configurar uma tabela, basta dar duplo clique sobre ela (na rea de trabalho da
ferramenta). Surgir a janela Table Editor (abaixo):
DBDesigner 4
7. A primeira operao a ser realizada atribuir um nome para a tabela. Observe que no
campo Table Name aparece um nome padro (Table-01), que dever ser substitudo
pelo nome da entidade. No nosso exemplo, a primeira tabela a ser criada ser PROJETO.
Basta digitar o novo nome (se o campo Table Name no estiver destacado, clicar no
campo e digitar).
8. Depois disso devemos determinar as colunas da tabela. Elas correspondem aos atributos
da entidade. Para fazer isso, basta clicar no campo destacado abaixo de Column Name.
Inicie a determinao das colunas pelo atributo chave (chave primria da tabela), pois o
DBDesigner 4 atribui a primeira coluna criada como sendo a chave primria da tabela.
No nosso exemplo, o atributo IDProj.
9. Ao digitar o nome da coluna e pressionar ENTER para confirmar, o foco passar para o
campo Data Type.
10. Nesse campo, que uma caixa drop-down, basta clicar no boto direita com seta
dupla e escolher o tipo de dado que ser armazenado nesse campo.
OBS: Para efeito de modelagem, utilizaremos as seguintes opes:
DBDesigner 4
11. Alm do nome e do tipo da coluna outras caractersticas podem ser configuradas:
NN (Not Null) Quando a opo estiver selecionada (sinal
aparecendo) significa
que no permitido deixar a coluna vazia (sem digitao). Para alterar a opo, basta
clicar no sinal (ele do tipo liga/desliga). Obs: a coluna chave primria SEMPRE
ter essa opo selecionada.
AI (Auto Increment) Quando essa opo estiver selecionada significa que os
valores da coluna sero criados automaticamente pelo banco de dados. Utilizada
somente para colunas chave primria, determina que ela ser automaticamente
numerada de um em um, a partir do nmero 1.
Flags essas opes sero alteradas automaticamente de acordo com o tipo de dado
escolhido.
Default Value deve ser usado quando a coluna tiver um valor padro que deve ser
utilizado, mesmo que no seja entrado dado nenhum nela. Como exemplo, podemos
imaginar uma tabela onde os dados sobre o estado de origem da pessoa devem ser
armazenados. Imaginemos que 99% das pessoas so do estado de SP, nesse caso
seria interessante determinar SP como valor padro.
Comments esse campo serve para que possamos colocar comentrios sobre as
colunas criadas.
Terminada a configurao da primeira coluna, o foco passa para a linha de baixo, para
que possamos adicionar novos campos/colunas tabela criada. A aparncia ser a
seguinte:
DBDesigner 4
Observe que surgiu o smbolo de uma chave na esquerda da primeira linha (coluna
IdProj). Isso indica que esse atributo chave (ele cria isso automaticamente). Para
modificar isso, ou indicar que outra coluna tambm uma chave primria, basta clicar
na posio esquerda do nome da coluna (funciona no modo liga/desliga).
12. Depois disso s acrescentar as colunas que faltam na tabela.
Column Name
Data Type
DescProj
Varchar(30)
DuraoPrev
INTEGER
Terminada a criao das colunas, pressionar ESC. A janela deve ter a seguinte
aparncia:
14. Terminada a criao da tabela, ela ter a seguinte aparncia na rea de trabalho (agora
com as suas novas caractersticas).
DBDesigner 4
OBS: O DBDesigner 4 tem como padro apresentar os nomes das colunas da tabela
junto com os tipos de dados escolhidos para elas. Se voc achar que isso pode deixar o
seu modelo com informaes demais e atrapalhar a compreenso do mesmo, possvel
ocultar a informao do tipo de dados.
Para isso escolher o menu Display, acessar a opo Table Columns e desmarcar a
opo Physical Schema Level.
Varchar(11)
NomeFunc
Varchar(45)
Tabela: DEPARTAMENTO
CodDep (PK)
Integer
NomeDep
Varchar(45)
Local
Varchar(20)
Tabela: BENEFICIRIO
CPFBen (PK)
Varchar(11)
NomeBen
Varchar(45)
Tabela: FUNCIONRIO_PRPRIO
MatrFunc
Integer
EndFunc
Varchar(45)
DBDesigner 4
Tabela: FUNCIONRIO_TERCEIRIZADO
IdTerc
Integer
CargaHorria
Float
Tabela: EMPRESA_PRESTADORA
CNPJ (PK)
Varchar(19)
NomeEmp
Varchar(45)
TelEmp
Varchar(11)
EndEmp
Varchar(45)
18. A prxima etapa criar os relacionamentos entre as tabelas. Para isso utilizaremos os
botes correspondentes na barra de ferramentas vertical (esquerda).
19. Para exemplificar cada um dos tipos de relacionamento, vamos acompanhar o Modelo
Conceitual.
20. O primeiro relacionamento a ser criado aquele entre as entidades PROJETO e
FUNCIONRIO (relacionamento chamado composto).
Observe que o relacionamento tem duas caractersticas importantes: ele um
relacionamento M:N e possui atributos (Horas_Trab).
21. Para criar um relacionamento M:N basta clicar no boto New n:m Relation
.O
DBDesigner 4
23. Os relacionamentos resultantes tambm possuem nomes padro que podem ser
alterados (duplo clique sobre o relacionamento e alterar o nome). O DBDesigner 4
10
DBDesigner 4
11
DBDesigner 4
de relacionamentos.
Para esse tipo de cardinalidade necessrio tomar outra deciso. A criao do
relacionamento feita colocando uma cpia da chave primria de uma das tabelas como
chave estrangeira da outra (como vimos na derivao de modelos). Portanto, devemos
determinar em qual tabela ser criada a chave estrangeira.
Tomada essa deciso, clicar na tabela que ceder a cpia da chave primria (no nosso
exemplo escolheremos FUNCIONRIO_PRPRIO) e depois clicar na tabela que receber
a chave estrangeira (no nosso exemplo BENEFICIRIO).
O resultado ser o seguinte:
Nessa janela clicar na seta dupla do campo Relation Kind e modificar para a opo 1:1
(sem nenhum outro detalhe no nome) e confirmar
12
DBDesigner 4
. O cursor
13
DBDesigner 4
Com isso o modelo est terminado. O resultado ser esse (depois de um rearranjo no
layout):
31. Terminado o trabalho de modelagem e salvo o arquivo possvel utilizar esse modelo de
diversas formas. Vejamos algumas delas:
I. Criar um arquivo de imagem com o modelo
Para criar um arquivo de imagem a partir do modelo acessar o menu File, acessar a
opo Export e clique na opo Export Model as Imagem...
14
DBDesigner 4
Escolhida essa opo surgira a janela Save Model As... (figura abaixo). Nessa
janela necessrio escolher o local onde o arquivo de imagem ser gravado, um
nome para a imagem e o tipo de arquivo de imagem que ser gerado (arquivo PNG
ou arquivo Bitmap). Basta clicar em Salvar.
15
DBDesigner 4
Escolhida essa opo surgir a janela Export SQL Script (figura abaixo).
Nessa janela possvel escolher entre copiar o script para a rea de Transferncia (e
depois Colar em algum editor de textos), usando o boto Copy Script to Clipboard,
ou salvar o script em um arquivo SQL (que pode ser usado no gerenciador de banco
de dados), usando o boto Save Script to File.
Abaixo o script resultante da modelagem do exemplo utilizado at aqui:
CREATE TABLE BENEFICIARIO (
CPFBen VARCHAR(11) NOT NULL AUTO_INCREMENT,
FUNCIONARIO_PROPRIO_MatrFunc INTEGER UNSIGNED NOT NULL,
NomeBen VARCHAR(45) NULL,
PRIMARY KEY(CPFBen, FUNCIONARIO_PROPRIO_MatrFunc),
INDEX BENEFICIARIO_FKIndex1(FUNCIONARIO_PROPRIO_MatrFunc)
);
CREATE TABLE COMPOSIO (
PROJETO_IdProj INTEGER UNSIGNED NOT NULL,
FUNCIONARIO_CPF VARCHAR(11) NOT NULL,
Horas_Trab FLOAT NULL,
PRIMARY KEY(PROJETO_IdProj, FUNCIONARIO_CPF),
INDEX PROJETO_has_FUNCIONARIO_FKIndex1(PROJETO_IdProj),
INDEX PROJETO_has_FUNCIONARIO_FKIndex2(FUNCIONARIO_CPF)
);
CREATE TABLE DEPARTAMENTO (
CodDep INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
NomeDep VARCHAR(45) NULL,
Local_2 VARCHAR(20) NULL,
PRIMARY KEY(CodDep)
);
CREATE TABLE EMPRESA_PRESTADORA (
CNPJ VARCHAR(19) NOT NULL AUTO_INCREMENT,
16
DBDesigner 4
17