如何维护数据库中存储的链状结构数据?

2015-03-13 22:03:35 +08:00
 doraemonext

现在在仿做公众号多图文的功能,数据在我的数据表中是这样存储的

id
parent_id
name
...(other data)

也就是说,在数据库中,一个多图文是这样靠 parent_id 链式连起来的。

问题是在修改该数据时,一个多图文会被作为一个整体进行修改,比如原来该多图文包含4条子图文,现在修改为3条或者5条。现在我的做法是先删除数据库中该图文的所有数据,然后重新添加,这样非常方便,但结果是其中的各个子图文的主键 id 都被更新了。因为每个子图文会有一个静态链接,所以也不能用主键来作为 URL 参数来访问,只能再为每个子图文新建一个不变的 key 作为标识符。

想问一下大家对于这种情况有没有更加有效的修改方案?感觉自己这种方法做了很多无用功。

2213 次点击
所在节点    问与答
1 条回复
oott123
2015-03-14 00:32:39 +08:00
我觉得很合理啊……

或者严格的区分子图文的修改和删除:4->3 就把多的那条删掉 4->5 就另外加一条

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/176732

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX