【发布时间】:2011-03-04 14:35:57
【问题描述】:
我不确定这是否是重复的问题,但我找不到关于这个主题的任何内容。
在表中存储树结构并能够存储该结构中的更改历史记录的最佳方法是什么。
感谢您的帮助。
更新:
我有 Employees 表,我需要将分支、部门、部分、子部分的结构存储在一个表中。 我需要存储员工分支机构、部门的历史信息,以便即使结构已更改,也能够检索员工的分支机构、部门、部门、子部门。
更新 2:
有一种解决方案可以在结构的每次更改时将整个结构保存在历史记录表中,但这是最好的方法吗?
更新 3:
还有订单表。我必须在每个订单上存储员工的职位、分支机构、部门、部门、子部门和其他。这是存储历史的主要原因。它会被经常使用。换句话说,我应该能够显示过去每一天的数据库数据。
更新 4:
也许使用 hierarchyid 是一种选择?
如果一个节点被重命名怎么办?如果我需要旧订单上的旧名称,我该怎么办?
【问题讨论】:
-
可能有不止一张桌子
-
没有“最佳方法”这样的东西,当前的解决方案是否能很好地解决需求,是否可扩展,是否简单,这些是我们在寻求解决方案时需要了解的问题跨度>
-
我正在设计新的数据库结构,所以这只是我想到的一个解决方案。我的目标是在创建新数据库和更改软件之前找出是否有更好的选择。
-
为什么需要历史记录中的信息类型?只是为了审核吗?是否进行分析,将表格从一个时间点与另一个时间点进行比较?例如,是否需要为某些会计或执行目的使用“最近几个月”图表的报告?结构多久会改变一次?信息的使用方式对模式建模的方式有很大影响。
-
@Thomas,我已经更新了我的问题。结构不经常改变。上个月、去年等有很多报告。
标签: sql sql-server tree history