IM/docs/数据字典.md

20 KiB
Raw Blame History

数据字典

表名Users

表说明:储存用户个人信息

字段名 数据类型 是否必填 默认值 主/外键 约束/索引 字段说明 示例值
Id INT / 主键 索引 主键自增 1
Username VARCHAR(50) / / 唯一 唯一用户名 admin
Password VARCHAR(50) / / / 用户密码 123456
NickName VARCHAR(50) / / / 用户昵称 /
OlineStatus TINYINT 0 / / 用户在线状态
0默认不在线
1在线
0
Created DATETIME 1970/1/1 / / 账户创建时间 2025/9/29
Updated DATETIME / / / 账户修改时间 2024/9/29
Status TINYINT 1 / / 账户状态
(0未激活,1正常,2封禁)
1
IsDeleted TINYINT 0 / / 软删除标识
0账号正常
1账号已删除
0

表名Friends

表说明:好友关系映射

字段名 数据类型 是否必填 默认值 主/外键 约束/索引 字段说明 示例值
Id INT / 主键 索引 主键自增 1
UserId INT / 外键Users.Id 索引 用户ID 1
FriendId INT / 外键Users.Id 索引 用户2ID 2
Status TINYINT 0 / / 当前好友关系状态
0待通过,1已添加,2已拒绝,3已拉黑
0
Created DATETIME 1970/1/1 / / 好友关系创建时间 2025/9/29

表名Groups

表说明:群聊

字段名 数据类型 是否必填 默认值 主/外键 约束/索引 字段说明 示例值
Id INT / 主键 索引 主键自增 1
Name VARCHAT20 / / / 群聊名称 测试群聊1
GroupMaster INT / 外键Users.Id 索引 群主 1
Auhority TINYINT 0 / / 群权限
0需管理员同意,1任意人可加群,2不允许任何人加入
0
AllMembersBanned TINYINT 0 / / 全员禁言0允许发言2全员禁言 0
Status TINYINT 1 / / 群聊状态
(1正常,2封禁)
1
Announcement TEXT null / / 群公告 这是一条测试群公告
Created DATETIME 1970/1/1 / / 群聊创建时间 2025/9/29

表名GroupMember

表说明:群成员

字段名 数据类型 是否必填 默认值 主/外键 约束/索引 字段说明 示例值
Id INT / 主键 索引 主键自增 1
UserId INT / 外键(Users.Id) 索引 用户编号 1
GroupId INT / 外键(Groups.Id) 索引 群聊编号 1
Role TINYINT 0 / / 成员角色0:普通成员,1:管理员,2:群主) 1
Created DATETIME 1970/1/1 / / 加入群聊时间 1970/1/1

表名GroupInvite

表说明:群聊邀请

字段名 数据类型 是否必填 默认值 主/外键 约束/索引 字段说明 示例值
Id INT / 主键 索引 主键自增 1
GroupId INT / 外键(Groups.Id) 索引 群聊编号 1
InvitedUser INT / 外键(Users.Id) 索引 被邀请用户 1
InviteUser INT / 外键(Users.Id) 索引 邀请用户 1
State TINYINT 0 / / 当前状态(0:待被邀请人同意
1:被邀请人已同意)
1
Created DATETIME 1970/1/1 / / 创建时间 1970/1/1

表名GroupRequest

表说明:群聊入群申请

字段名 数据类型 是否必填 默认值 主/外键 约束/索引 字段说明 示例值
Id INT / 主键 索引 主键自增 1
GroupId INT / 外键(Groups.Id) 索引 群聊编号 1
UserId INT / 外键(Users.Id) 索引 申请人 1
State TINYINT 0 / / 申请状态0:待管理员同意,1:已拒绝,2已同意 1
Description TEXT xxx申请加入群聊 / / 入群附言 /
Created DATETIME 1970/1/1 / / 创建时间 /

表名Messages

表说明:用户消息

字段名 数据类型 是否必填 默认值 主/外键 约束/索引 字段说明 示例值
Id INT / 主键 索引 主键自增 1
ChatType TINYINT 0 / / 聊天类型
0私聊,1群聊
0
MsgType TINYINT 0 / / 消息类型
(0:文本,1图片,2语音,3视频,4文件5语音聊天,6视频聊天)
0
Content TEXT / / / 消息内容 /
Sender INT / 外键(Users.Id) 索引 发送者 /
Recipient INT / / / 接收者私聊为用户ID群聊为群聊ID /
State TINYINT 0 / / 消息状态(0:已发送,1:已撤回) /
Created DATETIME 1970/1/1 / / 发送时间

表名Files

表说明:文件

字段名 数据类型 是否必填 默认值 主/外键 约束/索引 字段说明 示例值
Id INT / 主键 索引 主键自增 1
Name VARCHAR(50) / / / 文件名 测试文件.txt
URL VARCHAR(100) / / / 文件储存URL https://baidu.com/1.txt
Size INT / / / 文件大小单位KB 1024
Type VARCHAT(10) / / / 文件类型 txt
MessageId INT / 外键Messages.Id 索引 关联消息ID 1
Created DATETIME 1970/1/1 / / 创建时间 2025/9/29

表名Notifications

表说明:系统通知消息

字段名 数据类型 是否必填 默认值 主/外键 约束/索引 字段说明 示例值
Id INT / 主键 索引 主键自增 1
UserId INT / 外键(Users.Id) 索引 接收人(为空为全体通知) 1
NType TINYINT 0 / / 通知类型(0文本) 0
Title NVARCHAR(20) / / / 通知标题 1
Content TEXT / / / 通知内容 1
Created DATETIME 1970/1/1 / / 创建时间 /

表名Conversations

表说明:用户会话

字段名 数据类型 是否必填 默认值 主/外键 约束/索引 字段说明 示例值
Id INT / 主键 索引 主键自增 1
UserId INT / 外键(Users.Id) 索引 用户 1
TargetId INT / / / 对方ID群聊为群聊ID单聊为单聊ID 1
MsgType INT / / / 消息类型同Messages.MsgType /
lastMessageId INT / 外键(Messages.Id) 索引 最后一条消息ID 1
unreadCount INT / / / 未读消息数 /

表名FriendRequest

表说明:好友申请

字段名 数据类型 是否必填 默认值 主/外键 约束/索引 字段说明 示例值
Id INT / 主键 索引 主键自增 1
RequestUser INT / 外键(Users.Id) 索引 申请人 /
ResponseUser INT / 外键Users.Id 索引 被申请人 /
Created DATETIME 1970/1/1 / / 申请时间 /
Description TEXT xxx申请添加你为好友 / / 申请附言 /
State TINYINT 0 / / 申请状态0待通过,1:拒绝,2:同意,3拉黑 /

表名Devices

表说明:用户设备

字段名 数据类型 是否必填 默认值 主/外键 约束/索引 字段说明 示例值
Id INT / 主键 索引 主键自增 1
UserId INT / 外键(Users.Id) 索引 设备所属用户 /
DType TINYINT / / / 设备类型(
0:Android,1:Ios,2:PC,3Pad,4:未知)
0
LastLogin DATETIME 1970/1/1 / / 最后一次登录 /

表名Login_Log

表说明:登录日志

字段名 数据类型 是否必填 默认值 主/外键 约束/索引 字段说明 示例值
Id INT / 主键 索引 主键自增 1
DType TINYINT / / / 设备类型通Devices/DType /
Logined DATETIME 1970/1/1 / / 登录时间 /
UserId INT / 外键(Users.Id) / 登录用户 /
State TINYINT 0 / / 登录状态(0:登陆成功,1:未验证,2:已被拒绝) /

表名Admins

表说明:系统管理员

字段名 数据类型 是否必填 默认值 主/外键 约束/索引 字段说明 示例值
Id INT / 主键 索引 主键自增 1
Username VARCHAR(50) / / / 用户名 /
Password VARCHAR(50) / / / 密码 /
RoleId INT / 外键Roles.Id 索引 角色 /
State TINYINT 0 / / 状态0:正常2封禁 /
Created DATETIME 1970/1/1 / / 创建时间 /
Updated DATETIME 1970/1/1 / / 更新时间 /

表名Roles

表说明:角色

字段名 数据类型 是否必填 默认值 主/外键 约束/索引 字段说明 示例值
Id INT / 主键 索引 主键自增 1
Name VARCHAR(20) / / / 角色名称 /
Description TEXT 空字符串 / / 角色描述 /
Created DATETIME 1970/1/1 / / 创建时间 /

表名Permissions

表说明:权限

字段名 数据类型 是否必填 默认值 主/外键 约束/索引 字段说明 示例值
Id INT / 主键 索引 主键自增 1
PType INT 0 / / 权限类型(0:增,1:删,2:改,3:查) /
Name VARCHAR(50) / / / 权限名称 /
Code INT / / / 权限编码 /
Created DATETIME / / / 创建时间 /

表名PermissionARole

表说明:权限角色关联

字段名 数据类型 是否必填 默认值 主/外键 约束/索引 字段说明 示例值
Id INT / 主键 索引 主键自增 1
RoleId INT / 外键Roles.Id 索引 角色 /
PermissionId INT / 外键Permissions.Id 索引 权限 /