如何在数据库中存储目录/层次/树结构?

2024-03-20

如何在数据库中存储目录/层次结构/树结构?即MSSQL服务器。

@olavk:看起来你没有看到我自己的答案。我使用的方式比递归查询好得多:)

p.p.s. This is http://www.developerfusion.co.uk/show/4633/2/要走的路!


很多方法 http://troels.arvin.dk/db/rdbms/links/#hierarchical在 SQL 数据库中存储层次结构。选择哪一种取决于您使用的 DBMS 产品以及数据的使用方式。由于您已经使用了MSSQL2005标签,我认为您应该开始考虑“邻接列表”模型;如果您发现它对您的应用程序表现不佳,请查看瓦迪姆·特罗帕什科的比较 http://vadimtropashko.wordpress.com/2008/08/09/one-more-nested-intervals-vs-adjacency-list-comparison/其中突出了模型之间的差异,重点关注多个性能特征。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在数据库中存储目录/层次/树结构? 的相关文章

  • VS C#/SQL Server Compact 安装故障排除 - “事件日志文件已满”消息

    我正在尝试开发一个小型 C 应用程序 使用 MS Visual Express 和 SQL Server 但在尝试找出弹出的错误对话框时遇到问题 事件日志文件已满 我正在遵循这些说明 http msdn microsoft com en u
  • SQL Server 存储过程对象名称无效

    我在尝试修改现有存储过程时收到此错误 Invalid object name dbo BackupDB 我能够创建此存储过程 但是当我单击修改选项来修改此存储过程时 系统显示了上述错误 您会看到所附图片 当尝试执行此命令时 我也遇到同样的错
  • 有没有办法让这个UDF具有确定性?

    我认为这不是确定性的 因为DB NAME 是不是确定性的 如果DB NAME 不是确定性的 为什么不是确定性的 ALTER FUNCTION TheSchema udf IS PRODUCTION RETURNS bit WITH SCHE
  • 智能感知不工作 SSMS 2014

    我知道有很多关于这个问题的帖子 但是我无法找到解决我的问题的方法 跑步 SMS 2014 with CU1 SSMS 和客户端工具上的版本 10 0 2342 0 Visual Studio 2010 SP1 10 0 40219 1 SP
  • 将 Mdb 转换为 Sql Server

    如何使用 C 或其他语言将 mdb 访问文件转换为 sql server 我找到了一个article http channel9 msdn com forums TechOff 234266 Convert MS Access DB to
  • .net 应用程序中的内存泄漏

    我正在 VB net 2005 中开发一个桌面应用程序 该应用程序包含一个间隔为 1 分钟的计时器 每次计时器计时 就会执行一组函数 大部分与数据库相关 最初 应用程序运行良好 在进程 任务管理器 中 每次调用计时器时 CPU 使用率都会达
  • EF4 和 SQL Server 2000

    我使用 EF4 和 SQL Server 2005 开发了我的网站 但当转移到临时站点时 发现他们使用 SQL Server 2000 现在我收到此错误 我认为该错误与 SQL Server 2000 有关 Incorrect syntax
  • 默认情况下 dbo 架构中的 EF 6 Code First __MigrationHistory

    我是代码优先实体框架的新手 第一次运行我的应用程序后登录数据库时 当我看到 MigrationHistory 表时 我有点困惑 我现在了解对此表的需求 但不喜欢它位于用户表内的标准 dbo 模式中 我认为它很唐突且有风险 我的第一个想法是将
  • 从多行中获取/选择值到sql server中的1行中

    我有一个表格 每列都有一些图像 Acd unq id Emp unq id Acd BImg1 Acd BImg2 Acd RImg1 Acd RImp2 Acd RImg3 Acd Active 1 1745 BinaryImg Bina
  • .net Framework 4.0 中地理 SQL Server 数据类型的 C# 等效项是什么?

    net web应用程序使用 net 4 0框架 我有一个存储过程 它接受 sql server 2008 R2 中的地理数据类型 我想将 C 代码中的数据插入 SQL Server 但我无法找到应在 C 中使用哪种与 SQL Server
  • 删除或更改 ETL 中的记录

    我有一个表 我在上面构建了 ETL 服务 货物记录 到达 离开 进入表格 我已经这样做了 我的桌子将被删除 当项目标识符第二次到达数据库时 两条记录都被删除 label cost time x2 29 14 5 2020 01 00 00
  • SQL 中的代码重用和模块化

    代码重用和模块化对于 SQL 存储过程编程来说是一个好主意吗 如果是这样 将这些功能添加到 SQL 存储过程代码库的最佳方法是什么 我通常为常见且重复的任务创建标量值函数 我发现它不仅可以简化与现有程序类似的新程序的开发 而且还有助于错误跟
  • MSSQL:如何使用代码编写存储过程创建脚本?

    我正在尝试使用一个数据库中存在但另一个数据库中不存在的 information schema routines 查询存储过程定义列表 SELECT t1 Routine Definition FROM server1 MyDatabase
  • TSQL:无法对 COUNT(*) 执行聚合函数 AVG 来查找一天中最繁忙的时间

    考虑一个保存日志数据的 SQL Server 表 重要的部分是 CREATE TABLE dbo CustomerLog ID int IDENTITY 1 1 NOT NULL CustID int NOT NULL VisitDate
  • 将子查询的结果插入表中并带有常量

    相关表格的概要如下 我有一个表 我们称之为联接 它有两列 都是其他表的外键 我们将这两列称为 userid 和buildingid 因此 join 看起来像 join userid buildingid 我基本上需要在这个表中插入一堆行 通
  • 从 SQL Server 2012 查询结果中减去小时数

    我正在 SQL Server 2012 Management Studio 中的警报系统信号自动化平台数据库上运行查询 但遇到了一些问题 我的查询运行得很好 但我无法将结果细化到我想要的水平 我正在选择一些格式为的列DATETIME 我只想
  • 如何更新 SQL Server 2000 中的 text 或 ntext 字段

    所以我需要更新一个文本字段 在下面使用时 UPDATE 语句或 WRITETEXT 语句都不起作用 CREATE TABLE MyTable IDField int MyField text INSERT INTO MyTable IDFi
  • 如何通过Object Id和Column Id查询表数据?

    有桌子Clients PK LastName Name Address 1 Vidal Arturo St 2 Lavezzi Ezequiel St 3 Cuadrado Guillermo St 我想得到 通过以下查询 我可以得到前四列
  • 删除原始数据中部分重复的记录

    我需要删除表中时间间隔为 1 或 2 分钟或相同且必须相同的所有记录ID但保留第一个记录 ID Time SN SD WE FW 10 2014 06 30 19 17 37 000 I 0 100 0 10 2014 06 30 19 1
  • .NET:SqlDataReader.Close 或 .Dispose 导致超时过期异常

    当尝试在 SqlDataReader 上调用 Close 或 Dispose 时 我收到超时过期异常 如果您有到 SQL Server 的 DbConnection 您可以使用以下命令自行重现它 String CRLF r n String

随机推荐

  • Razor 视图语法无法识别 HTML 属性中的“@”

    我正在将一个项目从 MVC 2 迁移到 MVC3 和 razor 视图引擎 在 MVC 2 中 我将有以下 html div div 使用剃刀时 我尝试了以下操作 它呈现文字文本 电子邮件受保护 cdn cgi l email protec
  • 如何使用 Coffee-Bytes 代码折叠

    如何使用 Coffee Bytes 代码折叠 http market eclipsesource com yoxos node com cb eclipse folding feature group 我想使用用户定义的区域 但不知道如何使
  • 如何在多个程序中接收相同的udp流?

    我有一个封闭的第三方系统 它发送单播 UDP 流 MPEG TS 我想在同一台计算机上的两个不同程序中访问该流 我无法更改源上的任何内容 甚至无法更改 IP 或端口 除了编写自己的小程序来捕获流然后创建新流并重新发送这两个流之外 还有其他选
  • 迁移以更改字段的默认值,并将所有现有记录的值更改为新的默认值(仅当它具有旧的默认值时)。

    我需要将字段的默认值从 0 更改为 3 但问题是我已经有数千条记录 并且希望这些记录仅当记录的默认值是 0 时才将值从 0 更改为 3 但对于其他值 例如1 2 应该保持不变 我该怎么做 在迁移中 您应该使用方法change column来
  • WebRTC 无法从 USB 输入设备获取视频源(readyState 转为结束)

    我正在尝试使用 WebRTC 在屏幕上显示视频输入作为实时源 我不想进行任何点对点通信或类似的事情 只是显示视频源 我的代码对于我的笔记本电脑集成网络摄像头工作得很好 但是当我连接外部视频输入设备 在本例中是一台旧摄像机 使用 StarTe
  • 如何在 Mac 上的 Chrome 中复制请求负载?

    最近我无法从以下位置复制已解析的请求负载Chrome 开发工具 按钮被禁用 我可以复制正常的 POST 和 GET 请求 但不能复制已解析的 JSON 负载 这是巨大的痛苦 有人知道解决方案吗 来到你的问题有同样的问题 我的解决方案 用鼠标
  • 应用程序布局中的渲染引擎

    背景 我正在创建一个由核心和多个模块组成的应用程序 这些模块是轨道引擎 并提供实际的功能 因为核心本身仅充当主机 引擎托管于 lib并安装在各自的路径上 coreApp lib module1 module2 etc 然后像这样安装模块 m
  • 增加 matplotlib 中的内部填充/边距

    如何增加 修改内边距 填充 用红色箭头标记的 绿色的可以增加subplots adjust 有没有办法改变内部的 红色 改变源和观察者之间的距离 ax dist 15 default is 10
  • 如何在 R 中安装 keras 包

    我正在尝试安装深度学习包keras在 RStudio 上使用这个website https blog rstudio com 2017 09 05 keras for r 我安装了keras using install packages k
  • 对象化 NoClassDefFoundError

    所以我刚刚使用 Google Eclipse 插件在 Eclipse Indigo 中创建了一个新的 GAME 项目 并且我只有以下 servlet public class TestServlet extends HttpServlet
  • Git 和 Visual Studio 项目参考

    好吧 我的问题的简短版本是 当您的项目在多个解决方案之间共享时 在 Git 中处理项目引用的最佳方法是什么 我的 Git 存储库应该如何组织 长版本是 我们是一个小型开发团队 5 名开发人员 目前我们使用 TFS 作为我们的源代码控制和构建
  • 当页面的数据上下文用于其他绑定时,如何绑定到 WPF 依赖属性?

    当页面的数据上下文用于其他绑定时 如何绑定到 WPF 依赖属性 简单的问题 需要设置元素的数据上下文 XAML
  • UITableView 自动尺寸无法正常工作

    我有一个表格视图 其中填充了来自 Firebase 的数据 但是 当使用自动尺寸调整表格视图大小时 某些文本会被截断 这是我的故事板 约束设置为顶部 底部 右侧和左侧 当没有大量文本时 它工作正常 如此处所示 但是 当我用大量文本填充单元格
  • 谷歌地图 API v3 - 最近的街景

    当某个地点无法使用街景时 我想找到最近的有街景的地点 我能想到的唯一办法就是 radius 0 noOfPoints 3 while radius lt 10 miles radius radius 0 2 miles points cal
  • Prism,用Unity连接Views和ViewModels,试图理解它

    使用 Unity 创建视图和视图模型 使用 Unity 作为依赖项注入容器类似于使用 MEF 基于属性的注入和基于构造函数的注入都是 支持的 主要区别在于这些类型通常是 在运行时没有隐式发现 相反 他们必须是 已向容器注册 通常 您在视图模
  • 如何让 QFileDialog 选择并返回多个文件夹[重复]

    这个问题在这里已经有答案了 我希望用户能够选择多个文件夹 然后将这些文件夹的路径存储在列表中 我怎样才能做到这一点 我当前的 QFileDialog 如下所示 str QtGui QFileDialog getExistingDirecto
  • C++ CLI 集合初始值设定项语法

    C CLI 支持此功能吗 我想在 C CLI 中执行类似以下 C 示例的操作 var dictionary new Dictionary
  • 适用于 Java 的最佳 CLI 解析器 [重复]

    这个问题在这里已经有答案了 哪种 Java CLI 解析器比其他解析器更易于使用且可扩展性更好 以下是一些最受欢迎的 它们的功能都很齐全 使用过前两个后我可以推荐它们 公共命令行界面 http commons apache org cli
  • 使用 FOS 用户捆绑包编辑用户配置文件

    我将 symfony 2 与 FOSUserBundle 一起使用 问题是当添加用户时 当前登录的用户配置文件将被当前添加的用户替换 然后当我尝试编辑其他用户配置文件时 唯一可编辑的是当前登录的用户配置文件用户 FOSUserBundle
  • 如何在数据库中存储目录/层次/树结构?

    如何在数据库中存储目录 层次结构 树结构 即MSSQL服务器 olavk 看起来你没有看到我自己的答案 我使用的方式比递归查询好得多 p p s This is http www developerfusion co uk show 463