版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_37979178/article/details/84673866
功能类型
基本功能
- 邮箱注册验证
- 登录功能
- 个人信息修改
- 技术专题
核心功能
- 博客专家关注功能
- 博客信息过滤
- 标签化查询
- MarkDown语法支持
- 模糊查询
具体功能
- 评论功能
- 点赞功能
- 回复功能
- 收藏功能
个人信息主页展示
- 主题照片墙
- 个性签名
- 个人博客累计发表量
- 个人等级
- 基本信息展示
- 获得的点赞个数
- 粉丝个数
- 关注个数
公有信息展示
- 按标签展示相关的博客数据
- 默认根据浏览量展示热门博客(已选标签)
- 今日头条(无区别查询展示浏览量最多的相关博客)
数据库表格设计分析
用户表(从用户的角度分析数据-面向对象的另外一种设计)
表格设计分析以及功能管理表格:
- 一个用户有什么特有的展示:自己写的博客,自己关注的博客专家,自己关注的技术主题,自己收藏的博客以及属于自己的个人信息。
- 一个用户所拥有的权限:可以修改自己的个人信息,可以书写自己的技术博客,可以选择自己喜欢的博客专家技术专题,可以评论其他人的博客,可以创建技术主题。
用户表设计
id | name | pwd | |
---|---|---|---|
int | varchar | varchar | varchar |
用户详情表格设计
name | nick | address | gender | birthday | user_avatar | moto | user_id |
---|---|---|---|---|---|---|---|
varchar | varchar | varchar | varchar | date | varchar | text | int |
我的关注表格
owner_id | name | user_avatar | moto | focus_id |
---|---|---|---|---|
int | varchar | varchar | date | int |
我的粉丝表格
owner_id | name | user_avatar | moto | fans_id |
---|---|---|---|---|
int | varchar | varchar | text | int |
相互关注表格
owner_id | name | user_avatar | moto | mul_id |
---|---|---|---|---|
int | varchar | varchar | text | int |
博客基本信息以及博客详情表格设计(从博客的角度分析数据)
博客表字段分析:
- 博客的作者 2. 博客的发表时间 3. 博客的浏览量 4. 博客的标题
- 点赞的个数 6. 博客内容 7. 技术标签
博客表
id | title | time | scan_num | assure_num | owner_id | content | tab_id |
---|---|---|---|---|---|---|---|
int | varchar | varchar | int | int | int | varchar | int |
收藏博客表格
blog_id | blog_name | blog_date | owner_id |
---|---|---|---|
int | varchar | date | int |
博客评论表格设计
评论表格字段分析:
- 楼层功能 2. 指定楼主博客的回复 3. 只能回复楼主 4. 头像昵称以及回复内容,时间的信息展示
楼主表格
id | blog_id | user_nick | time | content | user_avatar |
---|---|---|---|---|---|
int | varchar | date | int | varchar | varchar |
回复表格(回复对象作为字符串填入到content字段中)
id | post_id | user_nick | time | content | user_avatar |
---|---|---|---|---|---|
int | int | varchar | varchar | varchar | varchar |
技术标签信息
技术标签表格
id | name | content | tab_pic |
---|---|---|---|
int | varchar | varchar | varchar |
技术标签关注表格
owner_id | tab_id |
---|---|
int | int |
公共信息展示
技术标签消息过滤:
- 展示浏览量多的博文 2. 技术标签信息过滤
精选信息展示:
- 展示整个博客表中点赞最多的博客
- 点赞评比要在相应的技术模块中进行选出
总结:
数据库设计的过程主要从以下几个方面入手:1. 分清一对一,一对多,和多对多三种关系;2. 用户特有信息展示和公共资源信息展示;3. 重视效率忽略第三范式;
4.表格数量设计尽量考虑后台Sql语句实现逻辑;5.仔细分清表格之间的关联逻辑