Upload
internet
View
105
Download
0
Embed Size (px)
Citation preview
1 LEIC, LBD 2002, Gabriel David, Ana Paiva, Luis Paulo Reis
Geração da base de dados lógica A ferramenta de transformação do modelo EA
para o modelo relacional converte:• Entidade -> tabela
• Atributos -> colunas
• Identificadores únicos primários -> chaves primárias
• Extremos das associações -> chaves externas
Cada execução transforma os objectos incluídos no conjunto a transformar (run set), criando os novos ou modificando os já existentes
• É possível especificar quais as acções a executar (Run Options)
2 LEIC, LBD 2002, Gabriel David, Ana Paiva, Luis Paulo Reis
Gerador da base de dados
3 LEIC, LBD 2002, Gabriel David, Ana Paiva, Luis Paulo Reis
Correspondências das tabelas
4 LEIC, LBD 2002, Gabriel David, Ana Paiva, Luis Paulo Reis
Controlar a transformação
5 LEIC, LBD 2002, Gabriel David, Ana Paiva, Luis Paulo Reis
Objectos a transformar
6 LEIC, LBD 2002, Gabriel David, Ana Paiva, Luis Paulo Reis
Herança
7 LEIC, LBD 2002, Gabriel David, Ana Paiva, Luis Paulo Reis
Implementação “supertype”
8 LEIC, LBD 2002, Gabriel David, Ana Paiva, Luis Paulo Reis
Implementação “supertype”Uma única tabela com todos os atributos.
Vantagens:
O esquema da BD fica simplificado.
O acesso aos dados é mais simples porque só está envolvida uma tabela.
Desvantagens:
Todas as colunas das tabelas interiores (subtipos) devem permitir valores NULL.
A manutenção dos subtipos tem que ser feita por programa.
9 LEIC, LBD 2002, Gabriel David, Ana Paiva, Luis Paulo Reis
Implementação “explicit subtype”
Seleccionar apenas as tabelas do subtipo e não a do supertipo.
10 LEIC, LBD 2002, Gabriel David, Ana Paiva, Luis Paulo Reis
Implementação “explicit subtype”Uma tabela para cada subtipo. Os subtipos contêm os atributos do supertipo.
Vantagens:
As colunas obrigatórias dos subtipos já não podem ter valores NULL.
Já não é necessário distinguir os subtipos recorrendo a programação.
Desvantagens:
Os registos do supertipo já não podem ser mantidos de forma independente.
Perguntas sobre o supertipo têm que percorrer todas as tabelas dos subtipos.
11 LEIC, LBD 2002, Gabriel David, Ana Paiva, Luis Paulo Reis
Implementação “implicit subtype”
12 LEIC, LBD 2002, Gabriel David, Ana Paiva, Luis Paulo Reis
Implementação “implicit subtype”Uma tabela para cada subtipo e uma para o supertipo. Os subtipos contêm os atributos do supertipo.
Vantagens:
As instâncias do supertipo podem ser acedidas de forma independente.
Os atributos obrigatórios dos subtipos são mapeados para colunas de preenchimento obrigatório.
Já não há necessidade de distinguir os subtipos programaticamente.
Desvantagens:
Apagar/alterar registos no supertipo envolve apagar/alterar os registos correspondentes nos subtipos.
O número de objectos a manter na BD é maior.
Repetir colunas em várias tabelas resulta em maiores gastos de memória.
13 LEIC, LBD 2002, Gabriel David, Ana Paiva, Luis Paulo Reis
Implementação “arc”
Feita em dois passos.1º passo:
-Criar todas as tabelas (supertipo e subtipos).
-Em “Run Options” apagar as opções “Columns”, “Keys” e “indexes”.
-Correr o comando.
14 LEIC, LBD 2002, Gabriel David, Ana Paiva, Luis Paulo Reis
Implementação “Arc”
2º passo:
Depois de criar as tabelas é necessário correr novamente o “Database Design Transformer” para criar as colunas e as chaves estrangeiras necessárias para implementar o arco entre as tabelas.
-Seleccionar a opção Arc nos subtipos.
-Em “Run options” seleccionar as opções “columns”, “keys” e “indexes”.
-Correr o comando.
15 LEIC, LBD 2002, Gabriel David, Ana Paiva, Luis Paulo Reis
Implementação “Arc”Uma tabela para cada subtipo e uma tabela para o supertipo. Os subtipos não contêm os atributos do supertipo.
Vantagens:
As operações de inserção/remoção só terão que ser executadas na tabela correspondente.
O espaço de disco é usado de forma mais eficiente.
Desvantagens:
A existência do arco sobre as chaves externas significa que o supertipo só pode estar associado a um subtipo.
Perguntas sobre atributos do supertipo e do subtipo obrigam a uma operação de JOIN.