Conheça também: Onmasters . Ofertas . Divulgue! . Vai.la . Geraboleto . Baixa.la . Assista.la . Joga.la
» Início » Desenvolvimento » Banco de dados e SQL » Modelagem de Dados: Hierarquias - Parte 1 -->
 
Avaliação: | Publicado em: 16/01/2007
Modelagem de Dados: Hierarquias - Parte 1


Vantagens

Simplicidade

O modelo adjacente é muito simples de ser compreendido. Como ele é uma transposição direta, dispensa qualquer tipo de mapeamento tornando-se de implementação rápida e fácil.

Número de tabelas

Para realizar a implementação da hierarquia através do modelo adjacente foi necessário apenas uma única tabela. A tabela “Centros de Custo” consegue expressar, através de métodos recursivos, todas as relações hierárquicas presentes.

Consultas de relação imediata

As consultas para descobrir o centro de custo superior imediato, ou os centros de custo inferiores imediatos também são fáceis de serem elaboradas. Como a relação hierárquica (e os relacionamentos) são todos controlados por apenas dois campos, as consultas são construídas de forma bem simples.

-- Selecionar todos os lançamentos dos centros de custo inferiores a TI
SELECT
    SUP.NomeCentroCusto AS CentroCustoSuperior,
    INF.NomeCentroCusto AS CentroCustoInferior,
    LAN.DataLancamento, LAN.ValorLancamento
FROM
    CentrosCusto AS SUP
    INNER JOIN CentrosCusto AS INF
        ON SUP.IdCentroCusto = INF.IdCentroCustoSup
    LEFT OUTER JOIN Lancamentos AS LAN
        ON INF.IdCentroCusto = LAN.IdCentroCusto
WHERE
    SUP.NomeCentroCusto = 'TI'

-- Selecionar todos os lançamentos do centro de custo superior a Arquitetura
SELECT
    SUP.NomeCentroCusto AS CentroCustoSuperior,
    INF.NomeCentroCusto AS CentroCustoInferior,
    LAN.DataLancamento, LAN.ValorLancamento
FROM
    CentrosCusto AS SUP
    INNER JOIN CentrosCusto AS INF
        ON SUP.IdCentroCusto = INF.IdCentroCustoSup
    LEFT OUTER JOIN Lancamentos AS LAN
        ON INF.IdCentroCusto = LAN.IdCentroCustoSup
WHERE
    INF.NomeCentroCusto = 'Arquitetura'

Espaço

Dentre as várias soluções de modelagem propostas para esse problema, essa é uma das mais econômicas em termos de espaço. A ausência de redundâncias e a obediência a princípios de normalização são os maiores fatores para a economia de espaço.

Este artigo é a parte 1 de 4 da seguinte série:

Davi Albuquerque <davialbuquerque@msn.com>
Parabéns pelo Artigo, uma verdadeira aula. hehe
Poderia ser mas expecífico, não contém informações completas..
As informações contidas não são o suficiente.
Heraldo Aguiar <haguiar@terra.com.br>
Sou financeiro leigo no assunto e ultimamente tenho me interessado em aprender um pouco.
Cara, bem legal. Excelente didática, coisa de Aguiar. Parabéns