针对复杂的多级栏目该如何设计数据库表结构? -问答-阿里云开发者社区-阿里云

开发者社区> 蛮大人123> 正文

针对复杂的多级栏目该如何设计数据库表结构?

2016-02-20 18:10:41 2722 1

比如可能存在如下几种情况:
主栏目1-->子栏目2-->子栏目3-->内容列表-->内容
主栏目2-->子栏目2-->内容列表-->内容
主栏目3-->内容列表-->内容
如果说为了开发和后期维护的方便,以及后期新的内容添加或删除方便,栏目表应该如何设计比较符合规范?
比如栏目按照一定规则拼接放到一个字段里:
主栏目1|子栏目11|子栏目111
主栏目2|子栏目21|子栏目212|子栏目2121
或者每个栏目另加个字段,存放父栏目的code?
或者有其它更好的方式或者有一定的设计规范?
我对数据库设计不太熟,望指点!

取消 提交回答
全部回答(1)
  • 蛮大人123
    2019-07-17 18:45:37

    作为内容表来说,这样的结构就够了:内容id,挂载栏目id,内容标题,内容。。。
    现在来说比较复杂的递归表,这里最好分析下你的数据库。
    最简单的设计方案是 id+parentId的设计,这是最经典的递归设计方案,没有层级限制,没有每级的栏目个数限制。而且oracle有递归函数支持。
    现在来说一种取巧的设计方式,类似于你上面写的 111、212这样的设计。这种设计在检索上是有利的,缺点是有限制,更具字段的长度,有最多级次限制,而且每级也有个数限制(当然,可以通过设计让这个限制不存在)。
    简单来说,如果级次表数据量不上GB、条数不到千万。id + parentId是最合适也是最灵活的设计。

    0 0
相关问答

17

回答

【大咖问答】对话PostgreSQL 中国社区发起人之一,阿里云数据库高级专家 德哥

阿里ACE 彭飞 2019-07-10 09:36:10 970753浏览量 回答数 17

145

回答

【新手入门】云服务器linux使用手册

fanyue88888 2012-11-26 17:14:18 157090浏览量 回答数 145

8

回答

OceanBase 使用动画(持续更新)

mq4096 2019-02-20 17:16:36 333888浏览量 回答数 8

22

回答

爬虫数据管理【问答合集】

我是管理员 2018-08-10 16:37:41 146796浏览量 回答数 22

3

回答

请问postgres实时同步数据到mysql数据库有什么好的方案吗?

toni3 2019-06-29 14:55:43 115800浏览量 回答数 3

2

回答

mySQL数据库报错You have an error in your SQL syntax

落地花开啦 2016-02-14 16:09:24 126587浏览量 回答数 2

38

回答

安全组详解,新手必看教程

我的中国 2017-11-30 15:23:46 256879浏览量 回答数 38

21

回答

请教一下数据量有100万条左右要什么配置?

易网网络 2013-03-27 15:18:02 192348浏览量 回答数 21

78

回答

【2013.9.5修正版图文】新手如何使用阿里云(linux)服务器建站(搬站)

姑苏公子 2013-04-11 00:39:13 107746浏览量 回答数 78

103

回答

云虚拟主机使用教程完整版!!

梦丫头 2015-08-08 13:12:33 107358浏览量 回答数 103
+关注
蛮大人123
我说我不帅他们就打我,还说我虚伪
0
文章
7733
问答
推荐问答
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载