问题标签 [hierarchyid]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
461 浏览

sql-server - SQL Server 是否“不允许”多个根?

我对 HierarchyId 世界非常陌生,并试图在我的 SQLServer 设计中实现 HierarchyId() 并且我的印象是 SQL Server 每个表的每个列只允许一个 Root 节点,如果表已经有一个 Root,我尝试如下node 那么它应该出错或抛出一些警告:

我的假设是基于我阅读的一些线程:

具有多个根节点的 SQL 2008 HierarchyID

但是,似乎 SQL 服务器在拥有多个根时没有任何问题,因为上面的插入查询工作得非常好,没有任何错误/警告。自从我使用 SQL Server 2012 以来,自 SQL Server 2008 以来有什么变化吗?还是我这边有什么误会?

0 投票
2 回答
1863 浏览

sql-server - 如何插入唯一的 HierarchyId 路径而无需指定左右兄弟?

我在 SQL 中使用 HierarchyId 来存储数据。我正在关注这里的教程:

http://www.codeproject.com/Tips/740553/Hierarchy-ID-in-SQL-Server

示例中提到的示例明确指定了节点的位置:

代码告诉 SQl 哪些是这个特定节点的兄弟节点。这没关系。但是,我想要的只是在特定父级下的树中的任何位置插入节点。这意味着我希望能够使用类似的东西:

意思是

  • 只要节点插入到正确的父节点下,我们不关心节点的水平定位
  • 当我尝试 GetDescendant(NULL,NULL) 为同一父项进行多次插入时,它为每个子项提供了相同的路径 /1/。这是为什么?
  • 另外,我遇​​到了以下链接:https ://technet.microsoft.com/en-us/library/bb677212%28v=sql.105%29.aspx 。它显示了为特定父级存储最后插入的子级的示例,然后在将其插入到数据库中进行任何进一步插入之前将其用作参考。它是插入具有层次结构的表以获得路径唯一性的标准方法吗?
0 投票
1 回答
2692 浏览

c# - C# 中是否支持 HierarchyId?

我刚刚开始在 Sql Server 中使用 hierarchyId。我正在研究 SQL Server 中的不同功能。但是,这对我来说听起来像是对非常厚的数据层的调用,我想避免这种情况。C# 中是否有支持 SQl Hierarchy Id 的 HierarchyId 类型的 API?

0 投票
1 回答
48 浏览

sql-server - 得到所有的祖先是行不通的

我在 SQL Server 中使用 HierarchyId,我参考下面的文章来获取所有祖先

https://technet.microsoft.com/en-us/library/bb677212%28v=sql.105%29.aspx

我有以下代码:

我在 DB 中有一个 id 为 0x58 的节点,它确实有一个孩子。但是,@last_child 出于某种原因不断返回 null。我做错什么了吗?

0 投票
1 回答
103 浏览

c# - ServiceStack ORMLite 目前是否支持 HierarchyId?

我正在看这篇可能没有更新的帖子:

对 OrmLite 的 SQL Server 特定类型支持

但是,我正在尝试查看当前是否支持它。如果不是,那么在使用 ORMLite 或任何 ORM 时,支持这些“不那么常​​见”类型的最佳方法是什么?

0 投票
1 回答
440 浏览

sql - 如何从 SQL 表中的父节点获取子节点?

假设我的数据库中有以下分层表示:

然后我想从A(或B)获取子节点。反之亦然,我想从给定的子节点获取父节点?<>

插入根:

孩子乙

0 投票
1 回答
324 浏览

.net - .NET Dataview 中的 HierarchyID

代码以前有效,但安装在新的 PC 上却没有。可能缺少设置?使用 Visual Studio 2013 专业版。

SQL Server 2012 具有带有 hierarchyID 字段的 db 表,但它具有 NULL 值。将此表查询到数据视图中。此字段的项目未被识别为 hierarchyID 数据类型。该代码继续使用地理数据类型。

0 投票
1 回答
395 浏览

sql - 按 HierarchyId 排序,但首先是父级

在我们的一个数据库中,我们使用 HierarchyId 列。然后我们从表中选择行,如下所示:

这以一个很好的层次结构布局,但所有节点都以相反的顺序排列,如下所示:

但是,我们希望节点保持此顺序,但父节点位于子节点之上,如下所示:

我能想到的唯一解决方案涉及递归 CTE,它会否定使用 HierarchyId 的许多好处。有人对如何做到这一点有任何想法吗?

谢谢,

0 投票
0 回答
552 浏览

c# - HierarchyId:先映射到原生实体框架代码

我正在尝试使用代码优先的流畅配置来定义我的架构,并且在配置列类型 hierarquyId 时遇到了问题。我尝试使用 Microsoft.SqlServer.Types.SqlHierarchyId 定义。不是成功。

建议?

如何首先在实体框架代码中原生使用 hierarquyId ?

对不起,我的英语不好

0 投票
1 回答
1066 浏览

sql - 从sql hierarchyid中获取最后一个孩子

我的表中有这样的hierarchyid。

无论类别、子类别或使用 SQL 查询的项目如何,我都想获得最后一个孩子。例如。如果是它的类别,它将返回 /1/ ;如果它是子类别它应该返回/1/或/2/(第二个孩子/最后一个孩子);如果它是 Item 它应该返回第三个孩子/最后一个孩子。

我试过这个查询。但是,它只返回我的第一部分。