文档里含有子目录,子目录里含有子目录,我究竟该分表还是用一个表完成?

我这个项目是做文档管理的,只要文档的内容有修改,就要生成一个新的版本,旧版本和新版本都可以查看。现在有这么个情况,数据元文档的结构是:

1.前言
2.范围
3.规范性引用文件
4.数据元目录
    4.1 子目录
      4.1.1 子目录
          中文名称:...
          内部标识符:...
          ... : ...
    4.2 子目录
5.版本号 

它的结构是这样的,我现在是把123作为一个文档表里面的字段,然后4的目录拆分出来做了一个表,表结构是父id和名称(因为可能要增加目录,比如有4.1.1.1),具体的数据元信息又是一个表(表结构是父id加数据元的字段),都是通过父id来关联,确认那个目录/数据元属于哪个目录下。然后要做的功能是当这个文档的内容修改过后,都会把原来的保存不动,生成一个新的版本号,以后可以查看之前版本的文档内容。现在的问题是,如果没有拆分的话,直接全部复制然后修改就可以,但是现在拆分表的话,文档表一复制,其下的目录表的父id,目录表里的子目录父id,数据元表里的父id,都要因为父id改变而增加一个,那这种情况,该怎么实现这么多的父id修改?

我想了一种方法: 在目录表和数据元表里加一个字段,除了它们本身有的父id外,再加一个祖id(文档的id),通过文档id来区分是属于哪一个版本的,但是这样好像也会有问题,复制过来的目录表、数据元表里的父id指向的还是上一个版本的对应id,只是祖id改变了。
很苦恼,还是我不该这么设计拆分表,非常感谢,耽误了您几分钟时间。

问题一: 我究竟该怎么拆分表,还是不拆分,直接用一个(直接用一个会有一个问题,子目录下有100条内容的话,在前端是分页显示的,能否做到子目录下的记录分页,比如我只要这个目录下的第11条到第20条记录)?

问题二: 如果拆分表的话,那这种情况,怎么实现这么多的关联父id的修改?

阅读 1.1k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进