我们在设计数据库的时候,是否会突破常规,找到最适合自己需求的设计方案,下面来举个例子:

 

   常用的邻接表设计,都会添加 一个 parent_id 字段,比如区域表(国、省、市、区):

CREATE TABLE Area ([id] [int]  NOT NULL,[name] [nvarchar]  (50) NULL,[parent_id] [int]  NULL,[type] [int]  NULL );

 

name:地域的名称, parent_id 是父ID,省的父ID是国,市的父ID 为省,以此类推。

type 是区域的阶级: 1:国,2:省,3:市,4:区

在层级比较确定的情况下,这么设计表格没有什么问题,调用起来也很方便。

 

但是使用这种邻接表设计方式,并不能满足所有的需求,当我们不确定层级的情况下,假设我有下面一个评论结构:

平面设计培训,网页设计培训,美工培训,游戏开发,动画培训

 

    用邻接表记录这个评论的数据(comments 表):

 

延伸阅读

学习是年轻人改变自己的最好方式-Java培训,做最负责任的教育,学习改变命运,软件学习,再就业,大学生如何就业,帮大学生找到好工作,lphotoshop培训,电脑培训,电脑维修培训,移动软件开发培训,网站设计培训,网站建设培训学习是年轻人改变自己的最好方式

我想了解如何学习

姓名:
手机:
留言:
 
comment_idparent_idauthorcomment
10小明我不大认同这个观点
21小张我也不认同