我是SQL Server 2008中的新手,剛剛介紹給HierarchyId。我正在學習SQL Server 2008 - HIERARCHYID - PART I。所以基本上我下面一行文章線,而在SSMS練我發現每childID的一些十六進制值像0X,0x58,0x5AC0等產生有關HierarchyId的一些問題(SQL Server 2008)
我的問題是
- 這些是什麼十六進制值?
- 這些爲什麼會生成,它們的用途是什麼?我的意思是我可以在哪裏使用這些hexa值?
- 我們是否對這些hexa值有任何控制權?我的意思是我們可以更新等。
- 如何通過查看這些hexa值來確定層次結構..我的意思是如何確定哪個是父母,哪個是孩子?
我想你指的是遞歸的熱膨脹係數,熱膨脹係數爲一般都無關層次。即便如此,這兩個概念並不相互排斥,而且hierarchyid與我見過的任何其他方法(索引和正確使用時)相比,具有更好的性能。 hierarchyid列也可以與其他嵌套集類型列結合使用,以執行具有索引搜索性能的非常複雜的分層查詢。我會說你的批評是沒有根據的; hierarchyid實際上是SQL 2008中最常用的數據類型之一。 – Aaronaught 2009-12-18 23:50:42
它不僅沒有被充分利用,而且還沒有得到支持。 LinqtoSQL或實體框架中不支持HierarchyId(dbml Designer不會觸及它們)。即使在VS 2010 RC中也是如此。 – 2010-02-11 00:19:27
對於我們中的一些人來說,HierarchyId是SQL中非常需要的補充。它消除了對許多遞歸查詢的需求,並且在正確使用時可以顯着提高性能。 – Mark 2010-03-26 08:23:46