Projeto de Banco de Dados - Parte 3
Neste artigo, continuaremos a tarefa de transformação do Modelo Conceitual em Modelo Lógico.
No artigo anterior, finalmente iniciamos a conversão entre os modelos Conceitual e Lógico. Esta é uma parte bastante importante do processo, pois já considera características do SGBD em questão.
Até o momento, executamos apenas o primeiro passo da transformação entre modelos, ou seja, a definição das tabelas com base nas entidades do Modelo Conceitual. As Figuras 1 e 2 mostram este resultado.
Figura 1. Entidades do Modelo Conceitual.
Figura 2. Tabelas do Modelo Lógico.
É importante também, neste momento, definir qual o SGBD que será utilizado e no nosso caso, optei pelo MySQL, por dois motivos simples: 1) é um SGBD Open Source; 2) É a única opção presente no DB Designer para a geração do Modelo Físico e scripts de criação do banco de dados.
Antes de darmos prosseguimento, é importante termos em mente que precisamos chegar, a cada passo, sempre mais perto da implementação final no banco de dados. Por isso, evitaremos também a utilização de acentuação e espaços na definição dos nomes de tabelas e campos. Você verá nas próximas seções as tabelas já devidamente corrigidas.
Neste artigo, continuaremos a tarefa de transformação do Modelo Conceitual em Modelo Lógico (o primeiro passo foi executado na edição anterior da SQL Magazine).
Continuando a transformação - 2º Passo: Atributos do Modelo Conceitual transformando-se em Campos no Modelo Lógico
Já temos a definição das primeiras tabelas, com base nas entidades encontradas no Modelo Conceitual. Passaremos agora para a definição dos campos destas tabelas com base nos atributos encontrados no Modelo Conceitual.
Apenas para relembrar, a Figura 3 mostra o Modelo Conceitual completo e é com base nele que continuaremos a transformação entre modelos. É importante salientar, como você já deve ter notado, que nosso modelo não contempla TODAS as características que possam aparecer em um modelo, mas nem por isso deixarei de cobrir estas características, apenas utilizarei exemplos práticos destas características mas estes exemplos não estarão efetivamente no modelo final.
Figura 3. Modelo Conceitual completo, apresentado pelo Diagrama ER.
Vamos iniciar definindo os campos para as tabelas já definidas sem nos preocupar com os relacionamentos. Estes campos são os atributos das entidades do Modelo Conceitual.
Como devemos levar em consideração o SGBD específico, uma informação importante, mas não fundamental para o Modelo Lógico, é o tipo de dados e o tamanho de cada campo. O Modelo Lógico em si não contempla estas informações, mas quando utilizamos ferramentas CASE para a construção do Modelo Lógico, definir este tipo de informação é particularmente útil, pois já deixa seu Modelo Lógico preparado para a conversão em Modelo Físico. Desta forma mostrarei na Tabela 1 os campos definidos e também os tipos de dados com os respectivos tamanhos. Note que os detalhes de tipo de dados podem variar de acordo com o SGBD escolhido, portanto é muito importante que seja lida a documentação do SGBD escolhido para verificar exatamente os tipos de dados suportados.
Entidade |
Atributo |
Tabela |
Campo |
Tipo de Dados |
Gênero Artista |
Código |
Gen_Artista |
Codigo |
INTEIRO |
Nome |
Nome |
LITERAL(64) | ||
Artista |
Código |
Artista |
Codigo |
INTEIRO |
Nome |
Nome |
LITERAL(64) | ||
Descrição |
Descricao |
LITERAL(128) | ||
Ano Origem |
Ano_Origem |
DATE | ||
Local Origem |
Local_Origem |
LITERAL(64) | ||
Música |
Código CD |
Musica |
Codigo_CD |
INTEIRO |
Núm Faixa |
Num_Faixa |
INTEIRO | ||
Título |
Titulo |
LITERAL(64) | ||
Tipo Gravação |
Tipo_Gravacao |
INTEIRO | ||
CD |
Código |
CD |
Codigo |
INTEIRO |
Título |
Titulo |
LITERAL(64) | ||
Núm CDs |
Num_CDs |
INTEIRO | ||
Categoria CD |
Código |
Categoria_CD |
Codigo |
INTEIRO |
Nome |
Nome |
LITERAL(64) | ||
Usuário |
Código |
Usuario |
Codigo |
INTEIRO |
Nome |
Nome |
LITERAL(64) |
Tabela 1. Tabela de conversão das entidades/atributos para tabelas/campos.
A Figura 4 apresenta a posição atual do Modelo Lógico.
Figura 4. Modelo Lógico contendo as entidades/atributos convertidas em tabelas/campos.
3º Passo: Atributos Multi-valorados do Modelo Conceitual transformando-se em Tabelas no Modelo Lógico
Em nosso modelo, conforme a descrição dos requisitos, não houve um caso sequer de atributo multi-valorado, mas o exemplo e implementação é bem simples de ser apresentado em nosso próprio modelo.
Imagine a situação da entidade “Usuário” apresentada na Figura 5.
Figura 5. Entidade “Gravadora” com atributo multi-valorado.
Perceba na Figura 5 o atributo “Telefone” na entidade “Gravadora”. Claramente é um atributo multi-valorado (com cardinalidade mínima 0 e máxima n), pois uma gravadora pode possuir mais de um telefone e deseja-se manter informações, se este for o caso. Temos também o atributo “Endereço” que também é multi-valorado, pois é composto de logradouro, complemento, número e CEP."
[...] continue lendo...Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo