文章目录
《足迹》数据库整体设计(基于mysql)
《足迹》会有哪些功能呢?
登录功能(基于微信小程序,不需要设置账户密码字段,用户基本信息绑定微信给每个用户提供的openid、nickname、avatarurl)、足迹相关功能(足迹信息、详情、评论等)
涉及到定位分享,热点功能,还需为用户信息表增加相关地址字段(经纬度、所处省市区街道、详细地址例如福州大学博学苑B区)、热力值字段。
还有漂流瓶功能(聊天功能)
那应该建多少张表呢?应该给这些表添加哪些字段呢?字段的约束怎么设计呢?表与表之间的关联关系应该怎样设计呢?
这是你在开始实战开发之前要思考的问题。
足迹数据库的整体设计如下图所示:暂且涉及到?张表:
用户信息表;
足迹信息表;
足迹评论表;
等
- 用户信息表t_user
最基本的表,其中鉴定用户信息的唯一数据id将贯彻整个数据库设计
| 字段名称 | 类型 | 备注 | 约束 |
|---|---|---|---|
| user_id | varchar(28) | 用户唯一标识openid | 主键 |
| uid | int | 后端暴露给客户端的用户身份凭证 | 非空,唯一,自增 |
| nickname | varchar(40) | 用户昵称 | 非空 |
| avatarurl | mediumtext | 用户头像 | 非空 |
| gender | int | 用户性别 1男2女0未知 | 默认为0 |
| signature | varchar | 用户签名 | 无 |
| recently | varchar(60) | 用于匹配漂流瓶 ,精确度为区/街道?(三个) | 无 |
| user_sta | int | 1为启用 0为禁用,用于后台审核 | 默认为1 |
- 足迹信息表t_footprint(帖子)
| 字段名称 | 类型 | 备注 | 约束 |
|---|---|---|---|
| footprint_id | int | 帖子标识id | 主键,自增 |
| uid | int | 帖子作者id | 外键 |
| footprint_content | longtext | 帖子内容 | 非空 |
| footprint_tags | varchar(60) | 帖子标签 | 非空 |
| createtime | datetime | 发帖时间 | 非空 |
| img_id | varchar(60) | 图片集id | 非空 |
| location | varchar(40) | 用户当前所在地址描述(如福大生活3区) | 无 |
| longitude | float | 帖子具体经度 | 无 |
| latitude | float | 帖子具体纬度 | 无 |
| likes | int | 点赞数 | 默认0 |
| comment_num | int | 评论数 | 默认0 |
| hot_value | int | 热力值,用于热点功能 | 默认0 |
帖子配图表photo
| 字段名称 | 类型 | 备注 | 约束 |
|---|---|---|---|
| img_id | varchar(60) | 图片所属帖子id | |
| pid | int | 图片id | 主键自增 (即imgs) |
| img | mediumtext | 图片地址 | 无 |
足迹评论表t_comment
| 字段名称 | 类型 | 备注 | 约束 |
|---|---|---|---|
| c_id | int | 评论id | 主键,自增 |
| comment_content | varchar(255) | 评论内容 | 非空 |
| footprint_id | int | 评论隶属帖子id | 非空 |
| createtime | datetime | 评论时间 | 非空 |
| uid | int | 评论人id | 外键 |
热点表 t_hot
| 字段名称 | 类型 | 备注 | 约束 |
|---|---|---|---|
漂流瓶相关表
漂流瓶信息表drift_bottle
| 字段名称 | 类型 | 备注 | 约束 |
|---|---|---|---|
| db_id | int | 漂流瓶id | 主键,自增 |
| suid | int | 发出漂流瓶用户 | 外键uid |
| ruid | int | 接收漂流瓶用户 | 外键uid |
| db_status | int | 漂流瓶状态 1/0 | 非空,默认为1 |
| db_text | longtext | 漂流瓶文本 | 无 |
| db_img | mediumtext | 漂流瓶配图 | 无 |
| createtime | datetime | 创建时间 | 非空 |
聊天窗口表chat_room
| 字段名称 | 类型 | 备注 | 约束 |
|---|---|---|---|
| room_id | int | 聊天窗口id | 主键,自增 |
| uidx | int | 聊天用户1 | 外键 (即uid) |
| uidy | int | 聊天用户2 | 外键(即uid) |
| createtime | datetime | 创建时间 | 非空 |
聊天记录表 chat_list
| 字段名称 | 类型 | 备注 | 约束 |
|---|---|---|---|
| msg_id | int | 消息id | 主键,自增 |
| room_id | int | 所属窗口 | 非空 |
| uid | int | 用户id | 外键 (即uid) |
| msg_content | mediumtext | 内容 | 非空 |
| createtime | datetime | 创建时间 | 非空 |
未完成,待后续更新
本文介绍了一个基于微信小程序的应用《足迹》的数据库设计方案,包括用户信息表、足迹信息表、足迹评论表等,并详细说明了各表的字段设计及其约束条件。
3423

被折叠的 条评论
为什么被折叠?



