doraemonext
V2EX  ›  问与答

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

  •  1
     
  •   doraemonext · Mar 13, 2015 · 2881 views
    This topic created in 4116 days ago, the information mentioned may be changed or developed.

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

    id
    parent_id
    name
    ...(other data)
    

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

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

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

    1 replies    2015-03-14 00:32:39 +08:00
    oott123
        1
    oott123  
       Mar 14, 2015
    我觉得很合理啊……

    或者严格的区分子图文的修改和删除:4->3 就把多的那条删掉 4->5 就另外加一条
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2629 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 05:04 · PVG 13:04 · LAX 22:04 · JFK 01:04
    ♥ Do have faith in what you're doing.