Índice

Las estructuras jerárquicas

La noción de organización jerárquica se encuentra en muchos ámbitos de la vida real y la modelización no siempre es fácil. Este es el caso de un organigrama de empresa, por ejemplo. SQL Server 2012 ofrece un tipo de datos (hierarchyId) y métodos que almacenan de manera estructurada esta jerarquía. También es posible optimizar el recorrido de esta jerarquía, usando índices que permitan recorrer rápidamente la arborescencia. Además, SQL Server con Transact SQL tiene métodos específicos para recorrer la arborescencia, que facilitan la extracción de datos.

1. HierarchyId HierarchyId

Es un tipo de datos específico de SQL Server que se puede usar para modelizar una estructura jerárquica en una tabla relacional. Los datos se podrán extraer de esta tabla, utilizando consultas jerárquicas.

Esta noción de jerarquía no es, en ningún caso, similar a una restricción de integridad; es posible encontrar elementos huérfanos, es decir, que no están en la arborescencia definida. Los elementos huérfanos pueden aparecer como consecuencia de haber introducido erróneamente valores o haber eliminado el elemento superior en la jerarquía.

El tipo hierarchyId ofrece todo el soporte necesario para modelizar correctamente una jerarquía en las tablas. Por supuesto, el simple hecho de definir una columna de este tipo en una tabla no garantiza, en ningún ...