Soy un novato en SQL Server 2008 y acabo de presentarme a HierarchyId.Algunas preguntas sobre HierarchyId (SQL Server 2008)
Estoy aprendiendo de SQL Server 2008 - HIERARCHYID - PART I. Así que, básicamente, estoy siguiendo la línea de artículo de línea y mientras se practica en SSMS que encontré que por cada childid algunos valores hexadecimales se generan como 0x, etc. 0x58,0x5AC0
Mis preguntas son
- qué es esto valores hexadecimales?
- ¿Por qué se generan y cuál es su uso? Quiero decir, ¿dónde puedo usar esos valores hexa?
- ¿Tenemos algún control sobre esos valores hexa? Quiero decir, ¿podemos actualizar, etc.
- Cómo determinar la jerarquía observando esos valores hexa ... Me refiero a cómo puedo determinar cuál es el padre y cuál es el hijo?
supongo que te refieres a recursiva CTE, como CTE, en general, no tienen nada que ver con las jerarquías. Incluso entonces, estos dos conceptos no son mutuamente excluyentes y hierarchyid tiene mucho, mucho mejor rendimiento que cualquier otro método que he visto (cuando se indexa y se usa correctamente). Una columna hierarchyid también se puede combinar con otras columnas de tipo anidado para realizar consultas jerárquicas muy complejas con rendimiento de búsqueda de índice. Diría que tu crítica es infundada; hierarchyid es, de hecho, uno de los tipos de datos menos utilizados en SQL 2008. – Aaronaught
No solo no está infrautilizado, sino que también está poco respaldado. No hay soporte para HierarchyId en LinqtoSQL o Entity Framework (el dbml Designer simplemente no los tocará). Esto es cierto incluso en VS 2010 RC. –
Para algunos de nosotros, HierarchyId es una adición muy necesaria a SQL. Elimina la necesidad de muchas consultas recursivas y puede ofrecer ganancias de rendimiento significativas si se usa correctamente. – Mark