Flutter高仿微信-表结构
高仿微信表结构是一个复杂的任务,涉及到多个表和数据关系。下面是详细描述:
1. 用户表 wc_user
| 字段名 | 类型 | 描述 |
| --- | --- | --- |
| id | int | 主键,用户ID |
| username | varchar(20) | 用户名 |
| password | varchar(32) | 密码(MD5加密) |
| nickname | varchar(10) | 昵称 |
| avatar | varchar(100) | 头像URL |
2. 单聊表 wc_chat
| 字段名 | 类型 | 描述 |
| --- | --- | --- |
| id | int | 主键,聊天ID |
| user_id | int | 用户ID(发送者) |
| friend_id | int | 好友ID(接收者) |
| content | text | 消息内容 |
| send_time | datetime | 发送时间 |
3. 联系人表 wc_contacts
| 字段名 | 类型 | 描述 |
| --- | --- | --- |
| id | int | 主键,联系人ID |
| user_id | int | 用户ID |
| friend_id | int | 好友ID |
| nickname | varchar(10) | 昵称 |
4. 群聊名称表 wc_group
| 字段名 | 类型 | 描述 |
| --- | --- | --- |
| id | int | 主键,群聊ID |
| name | varchar(20) | 群聊名称 |
5. 群聊用户表 wc_group_user
| 字段名 | 类型 | 描述 |
| --- | --- | --- |
| id | int | 主键,群聊成员ID |
| group_id | int | 群聊ID |
| user_id | int | 用户ID |
6. 群聊聊天信息表 wc_group_chat
| 字段名 | 类型 | 描述 |
| --- | --- | --- |
| id | int | 主键,群聊消息ID |
| group_id | int | 群聊ID |
| user_id | int | 用户ID(发送者) |
| content | text | 消息内容 |
| send_time | datetime | 发送时间 |
7.朋友圈表 wc_moments
| 字段名 | 类型 | 描述 |
| --- | --- | --- |
| id | int | 主键,朋友圈ID |
| user_id | int | 用户ID |
| content | text | 内容 |
| image_url | varchar(100) | 图片URL |
| send_time | datetime | 发送时间 |
以上是高仿微信表结构的详细描述。这些表之间存在以下关系:
* 每个用户都有一个唯一的 ID,用于标识他们。
* 单聊表中的每条消息都与一个用户和一个好友相关联。
* 联系人表中,每个联系人的昵称都是唯一的。
* 群聊名称表中,每个群聊都有一个唯一的 ID 和名称。
* 群聊成员表中,每个成员都与一个群聊和一个用户相关联。
* 群聊消息表中的每条消息都与一个群聊和一个用户相关联。
*朋友圈表中的每条内容都是由一个用户发送的。
这些表之间的关系可以通过以下 SQL 查询来实现:
```sqlSELECT * FROM wc_user;
SELECT * FROM wc_chat WHERE user_id = ? AND friend_id = ?;
SELECT * FROM wc_contacts WHERE user_id = ? AND friend_id = ?;
SELECT * FROM wc_group WHERE id = ?;
SELECT * FROM wc_group_user WHERE group_id = ? AND user_id = ?;
SELECT * FROM wc_group_chat WHERE group_id = ? AND user_id = ?;
SELECT * FROM wc_moments WHERE user_id = ?;
```
以上是高仿微信表结构的详细描述和关系。