# 数据库设计

# 数据库设计规约

  1. 表达是与否概念的字段,必须使用 is_xxx 的方式命名,数据类型是 unsigned tinyint( 1 表示是, 0 表示否)。

说明: 任何字段如果为非负数,必须是 unsigned,坚持 is_xxx 的命名方式是为了明确其取值含义与取值范围。

正例: 表达逻辑删除的字段名 is_deleted, 1 表示删除, 0 表示未删除。

  1. 表名、字段名必须使用小写字母或数字, 禁止出现数字开头,禁止两个下划线中间只出现数字。数据库字段名的修改代价很大,字段名称需要慎重考虑。

说明: MySQL 在 Windows 下不区分大小写,但在 Linux 下默认是区分大小写。因此,数据库名、表名、字段名,都不允许出现任何大写字母,避免节外生枝。

  1. 表名不使用复数名词。

说明: 表名应该仅仅表示表里面的实体内容,不应该表示实体数量,对应于 DO 类名也是单数形式,符合表达习惯。

  1. 禁用保留字,如 desc、 range、 match、 delayed 等, 请参考 MySQL 官方保留字。

  2. 主键索引名为 pk_字段名;唯一索引名为 uk_字段名; 普通索引名则为 idx_字段名。

说明: pk_ 即 primary key; uk_ 即 unique key; idx_ 即 index 的简称。

  1. 小数类型为 decimal,禁止使用 float 和 double。

说明: 在存储的时候, float 和 double 都存在精度损失的问题,很可能在比较值的时候,得到不正确的结果。如果存储的数据范围超过 decimal 的范围,建议将数据拆成整数和小数并分开存储。

  1. 如果存储的字符串长度几乎相等,使用 char 定长字符串类型。

  2. varchar 是可变长字符串,不预先分配存储空间,长度不要超过 5000,如果存储长度大于此值,定义字段类型为 text,独立出来一张表,用主键来对应,避免影响其它字段索引效率。

  3. 表必备三字段: id, create_time, update_time。

说明: 其中 id 必为主键,类型为 bigint unsigned、单表时自增、步长为 1。 create_time, update_time的类型均为 datetime 类型,前者现在时表示主动式创建,后者过去分词表示被动式更新。

注意:更新数据表记录时,必须同时更新记录对应的 update_time 字段值为当前时间。

  1. 表的命名最好是遵循“业务名称_表的作用” 。

正例:book_info / book_chapter / user_bookshelf / user_comment / author_info

  1. 库名与应用名称尽量一致。

  2. 如果修改字段含义或对字段表示的状态追加时,需要及时更新字段注释。

  3. 字段允许适当冗余,以提高查询性能,但必须考虑数据一致。冗余字段应遵循:

    • 不是频繁修改的字段。
    • 不是唯一索引的字段。
    • 不是 varchar 超长字段,更不能是 text 字段。

正例: 各业务线经常冗余存储小说名称,避免查询时需要连表(单体应用)或跨服务(微服务应用)获取。

  1. 单表行数超过 500 万行或者单表容量超过 2GB,才推荐进行分库分表。

说明: 如果预计三年后的数据量根本达不到这个级别,请不要在创建表时就分库分表。

  1. 合适的字符存储长度,不但节约数据库表空间、节约索引存储,更重要的是提升检索速度。

正例: 无符号值可以避免误存负数, 且扩大了表示范围。

  1. 业务上具有唯一特性的字段,即使是组合字段,也必须建成唯一索引。

说明: 不要以为唯一索引影响了 insert 速度,这个速度损耗可以忽略,但提高查找速度是明显的; 另外,即使在应用层做了非常完善的校验控制,只要没有唯一索引,根据墨菲定律,必然有脏数据产生。

  1. 超过三个表禁止 join。需要 join 的字段,数据类型保持绝对一致; 多表关联查询时,保证被关联的字段需要有索引。

说明: 即使双表 join 也要注意表索引、 SQL 性能。

  1. 在 varchar 字段上建立索引时,必须指定索引长度,没必要对全字段建立索引,根据实际文本区分度决定索引长度。

说明: 索引的长度与区分度是一对矛盾体,一般对字符串类型数据,长度为 20 的索引,区分度会高达 90%以上,可以使用 count(distinct left(列名, 索引长度))/count(*)的区分度来确定。

  1. 创建索引时避免有如下极端误解:

    • 索引宁滥勿缺。 认为一个查询就需要建一个索引。
    • 吝啬索引的创建。 认为索引会消耗空间、 严重拖慢记录的更新以及行的新增速度。
    • 抵制惟一索引。 认为惟一索引一律需要在应用层通过“先查后插” 方式解决。

# 数据库建模工具

本项目使用PDManer对数据库进行设计、版本管理等。

# 介绍

PDManer 元数建模,是一款多操作系统开源免费的桌面版关系数据库模型建模工具,基于 ES6 + React + Electron + Java 构建,相对于 PowerDesigner,他具备界面简洁美观,操作简单,上手容易等特点。支持 Windows, Mac, Linux 等操作系统,也能够支持国产操作系统,能够支持的数据库如下:

  • MySQL, PostgreSQL, Oracle, SQLServer等常见数据库
  • 支持达梦,GuassDB 等国产数据库
  • 支持 Hive,MaxCompute 等大数据方向的数据库
  • 用户还可以自行添加更多的数据库扩展

# 主要功能

数据表管理: 数据表,字段,注释,索引等基本功能。
视图管理: 实现选择多张表多个字段后,组合一个新的视图对象,视图可生成 DDL 以及相关程序代码,例如 Java 的 DTO 等。
ER关系图: 数据表可绘制ER关系图至画布,也支持概念模型等高阶抽像设计。
数据字典: 代码映射表管理,例如 1 表示男,2 表示女,并且实现数据字典与数据表字段的关联。
数据类型: 系统实现了基础数据类型,基础数据类型在不同数据库下表现为不同数据库类型的方言,这是实现多数据**库支持的基础,为更贴近业务,引入了PowerDesigner的数据域这一概念,用于统一同一类具有同样业务属性字段的批量设置类型,长度等。基础数据类型以及数据域,用户均可自行添加,自行定义。
多数据库: 内置主流常见数据库,如 MySQL,PostgreSQL,SQLServer,Oracle等,并且支持用户自行添加新的数据库。
代码生成: 内置 Java,Mybatis,MyBatisPlus 等常规情况下 Controller,Service,Mapper 的生成,也添加了 C# 语言支持,可自行扩展对其他语言的支持,如Python 等。
版本管理: 实现数据表的版本管理,可生成增量DDL脚本。
生态对接: 能够导入PowerDesigner的pdm文件,老版本的PDMan文件,也能导出为word文档,导出相关设置等。

# 软件下载

https://gitee.com/robergroup/pdmaner/releases (opens new window)

# 系统功能概要

  • 前台门户系统

    • 首页: 轮播图、本周推荐、热门推荐、精品推荐、点击榜单、新书榜单、更新榜单、最新新闻、友情链接、反馈留言
    • 新闻模块: 新闻分类、新闻列表、新闻阅读
    • 小说检索: 根据书名、作者名等关键词和作品频道、分类、是否完结、字数、更新方式等筛选条件检索小说
    • 小说详情页: 小说信息展示、作家信息展示、最新章节概要、最新评论、评论发表、加入书架、同类推荐
    • 小说评论页: 小说评论区,评论展示、发表评论
    • 小说目录页: 小说目录展示
    • 小说内容页: 小说章节订阅、小说内容阅读、小说段落评论
    • 排行榜: 点击榜、更新榜、新书榜、评论榜
    • 充值: 支付宝/微信购买虚拟币
    • 会员中心: 登录注册、账号信息、账号设置、书架、阅读历史、书评、充值/消费记录、用户反馈
  • 作家后台管理系统

    • 作家申请: 获取邀请码、作家信息提交
    • 小说管理: 小说发布、章节管理、薪酬查询、作品信息
    • 稿费收入: 订阅明细、稿费汇总
  • 平台后台管理系统

    • 系统管理: 用户管理、角色管理、权限管理、菜单管理
    • 首页管理: 小说推荐管理、新闻发布管理、友情链接管理
    • 会员管理: 网站会员管理、反馈管理、评论管理
    • 作家管理: 作家邀请码管理、作家信息管理
    • 小说管理: 小说管理、小说章节管理
    • 订单管理: 充值订单、订阅订单
    • 统计报表: 会员、作家、小说、交易等数据的统计报表

# 数据库关系图

# 首页模块

首页模块ER图

# 新闻模块

新闻模块ER图

# 小说模块

小说模块ER图

# 用户模块

用户模块ER图

# 作家模块

作家模块ER图

# 支付模块

作家模块ER图

# 系统模块

系统模块ER图

# 数据库表结构

# 首页模块

home_book [首页小说推荐]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id BIGINT UNSIGNED
2 type 推荐类型 TINYINT UNSIGNED 0-轮播图 1-顶部栏 2-本周强推 3-热门推荐 4-精品推荐
3 sort 推荐排序 TINYINT UNSIGNED
4 book_id 推荐小说ID BIGINT UNSIGNED
5 create_time 创建时间 DATETIME
6 update_time 更新时间 DATETIME

home_friend_link [友情链接]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id BIGINT UNSIGNED
2 link_name 链接名 VARCHAR(50)
3 link_url 链接url VARCHAR(100)
4 sort 排序号 TINYINT UNSIGNED 11
5 is_open 是否开启 TINYINT UNSIGNED 1 0-不开启 1-开启
6 create_time 创建时间 DATETIME
7 update_time 更新时间 DATETIME

# 新闻模块

news_category [新闻类别]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id BIGINT UNSIGNED
2 name 类别名 VARCHAR(20)
3 sort 排序 TINYINT UNSIGNED 10
4 create_time 创建时间 DATETIME
5 update_time 更新时间 DATETIME

news_info [新闻信息]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id 主键 BIGINT UNSIGNED
2 category_id 类别ID BIGINT UNSIGNED
3 category_name 类别名 VARCHAR(50)
4 source_name 新闻来源 VARCHAR(50)
5 title 新闻标题 VARCHAR(100)
6 create_time 创建时间 DATETIME
7 update_time 更新时间 DATETIME

news_content [新闻内容]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id 主键 BIGINT UNSIGNED
2 news_id 新闻ID BIGINT UNSIGNED
3 content 新闻内容 MEDIUMTEXT
4 create_time 创建时间 DATETIME
5 update_time 更新时间 DATETIME

# 小说模块

book_category [小说类别]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id BIGINT UNSIGNED
2 work_direction 作品方向 TINYINT UNSIGNED 0-男频 1-女频
3 name 类别名 VARCHAR(20)
4 sort 排序 TINYINT UNSIGNED 10
5 create_time 创建时间 DATETIME
6 update_time 更新时间 DATETIME

book_info [小说信息]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id 主键 BIGINT UNSIGNED
2 work_direction 作品方向 TINYINT UNSIGNED 0-男频 1-女频
3 category_id 类别ID BIGINT UNSIGNED
4 category_name 类别名 VARCHAR(50)
5 pic_url 小说封面地址 VARCHAR(200)
6 book_name 小说名 VARCHAR(50)
7 author_id 作家id BIGINT UNSIGNED
8 author_name 作家名 VARCHAR(50)
9 book_desc 书籍描述 VARCHAR(2000)
10 score 评分 TINYINT UNSIGNED 总分:10 ,真实评分 = score/10
11 book_status 书籍状态 TINYINT UNSIGNED 0 0-连载中 1-已完结
12 visit_count 点击量 BIGINT UNSIGNED 103
13 word_count 总字数 INT UNSIGNED 0
14 comment_count 评论数 INT UNSIGNED 0
15 last_chapter_id 最新章节ID BIGINT UNSIGNED
16 last_chapter_name 最新章节名 VARCHAR(50)
17 last_chapter_update_time 最新章节更新时间 DATETIME
18 is_vip 是否收费 TINYINT UNSIGNED 0 1-收费 0-免费
19 create_time 创建时间 DATETIME
20 update_time 更新时间 DATETIME

book_chapter [小说章节]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id BIGINT UNSIGNED
2 book_id 小说ID BIGINT UNSIGNED
3 chapter_num 章节号 SMALLINT UNSIGNED
4 chapter_name 章节名 VARCHAR(100)
5 word_count 章节字数 INT UNSIGNED
6 is_vip 是否收费 TINYINT UNSIGNED 0 1-收费 0-免费
7 create_time DATETIME
8 update_time DATETIME

book_content [小说内容]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id 主键 BIGINT UNSIGNED
2 chapter_id 章节ID BIGINT UNSIGNED
3 content 小说章节内容 MEDIUMTEXT
4 create_time DATETIME
5 update_time DATETIME

book_comment [小说评论]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id 主键 BIGINT UNSIGNED
2 book_id 评论小说ID BIGINT UNSIGNED
3 user_id 评论用户ID BIGINT UNSIGNED
4 comment_content 评价内容 VARCHAR(512)
5 reply_count 回复数量 INT UNSIGNED 0
6 audit_status 审核状态 TINYINT UNSIGNED 0 0-待审核 1-审核通过 2-审核不通过
7 create_time 创建时间 DATETIME
8 update_time 更新时间 DATETIME

book_comment_reply [小说评论回复]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id 主键 BIGINT UNSIGNED
2 comment_id 评论ID BIGINT UNSIGNED
3 user_id 回复用户ID BIGINT UNSIGNED
4 reply_content 回复内容 VARCHAR(512)
5 audit_status 审核状态 TINYINT UNSIGNED 0 0-待审核 1-审核通过 2-审核不通过
6 create_time 创建时间 DATETIME
7 update_time 更新时间 DATETIME

# 用户模块

user_info [用户信息]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id BIGINT UNSIGNED
2 username 登录名 VARCHAR(50)
3 password 登录密码-加密 VARCHAR(100)
4 salt 加密盐值 VARCHAR(8)
5 nick_name 昵称 VARCHAR(50)
6 user_photo 用户头像 VARCHAR(100)
7 user_sex 用户性别 TINYINT UNSIGNED 0-男 1-女
8 account_balance 账户余额 BIGINT UNSIGNED 0
9 status 用户状态 TINYINT UNSIGNED 0 0-正常
10 create_time 创建时间 DATETIME
11 update_time 更新时间 DATETIME

user_feedback [用户反馈]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id BIGINT UNSIGNED
2 user_id 反馈用户id BIGINT UNSIGNED
3 content 反馈内容 VARCHAR(512)
4 create_time 创建时间 DATETIME
5 update_time 更新时间 DATETIME

user_bookshelf [用户书架]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id 主键 BIGINT UNSIGNED
2 user_id 用户ID BIGINT UNSIGNED
3 book_id 小说ID BIGINT UNSIGNED
4 pre_content_id 上一次阅读的章节内容表ID BIGINT UNSIGNED
5 create_time 创建时间 DATETIME
6 update_time 更新时间 DATETIME

user_read_history [用户阅读历史]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id 主键 BIGINT UNSIGNED
2 user_id 用户ID BIGINT UNSIGNED
3 book_id 小说ID BIGINT UNSIGNED
4 pre_content_id 上一次阅读的章节内容表ID BIGINT UNSIGNED
5 create_time 创建时间 DATETIME
6 update_time 更新时间 DATETIME

user_consume_log [用户消费记录]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id 主键 BIGINT UNSIGNED
2 user_id 消费用户ID BIGINT UNSIGNED
3 amount 消费使用的金额 INT UNSIGNED 单位:屋币
4 product_type 消费商品类型 TINYINT UNSIGNED 0 0-小说VIP章节
5 product_id 消费的的商品ID BIGINT UNSIGNED 例如:章节ID
6 produc_name 消费的的商品名 VARCHAR(50) 例如:章节名
7 produc_value 消费的的商品值 INT UNSIGNED 例如:1
8 create_time 创建时间 DATETIME
9 update_time 更新时间 DATETIME

user_pay_log [用户充值记录]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id BIGINT UNSIGNED
2 user_id 充值用户ID BIGINT UNSIGNED
3 pay_channel 充值方式 TINYINT UNSIGNED 1 0-支付宝 1-微信
4 out_trade_no 商户订单号 VARCHAR(64)
5 amount 充值金额 INT UNSIGNED 单位:分
6 product_type 充值商品类型 TINYINT UNSIGNED 0 0-屋币 1-包年VIP
7 product_id 充值商品ID BIGINT UNSIGNED
8 product_name 充值商品名 VARCHAR(255) 示例值:屋币
9 product_value 充值商品值 INT UNSIGNED 示例值:255
10 pay_time 充值时间 DATETIME
11 create_time 创建时间 DATETIME
12 update_time 更新时间 DATETIME

# 作家模块

author_code [作家邀请码]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id 主键 BIGINT UNSIGNED
2 invite_code 邀请码 VARCHAR(100)
3 validity_time 有效时间 DATETIME
4 is_used 是否使用过 TINYINT UNSIGNED 0 0-未使用 1-使用过
5 create_time 创建时间 DATETIME
6 update_time 更新时间 DATETIME

author_info [作者信息]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id 主键 BIGINT UNSIGNED
2 user_id 用户ID BIGINT UNSIGNED
3 invite_code 邀请码 VARCHAR(20)
4 pen_name 笔名 VARCHAR(20)
5 tel_phone 手机号码 VARCHAR(20)
6 chat_account QQ或微信账号 VARCHAR(50)
7 email 电子邮箱 VARCHAR(50)
8 work_direction 作品方向 TINYINT UNSIGNED 0-男频 1-女频
9 status 0:正常 TINYINT UNSIGNED 0 1-封禁
10 create_time 创建时间 DATETIME
11 update_time 更新时间 DATETIME

author_income [稿费收入统计]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id 主键 BIGINT UNSIGNED
2 author_id 作家ID BIGINT UNSIGNED
3 book_id 小说ID BIGINT UNSIGNED
4 income_month 收入月份 DATE
5 pre_tax_income 税前收入 INT UNSIGNED 0 单位:分
6 after_tax_income 税后收入 INT UNSIGNED 0 单位:分
7 pay_status 支付状态 TINYINT UNSIGNED 0 0-待支付 1-已支付
8 confirm_status 稿费确认状态 TINYINT UNSIGNED 0 0-待确认 1-已确认
9 detail 详情 VARCHAR(255)
10 create_time 创建时间 DATETIME
11 update_time 更新时间 DATETIME

author_income_detail [稿费收入明细统计]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id 主键 BIGINT UNSIGNED
2 author_id 作家ID BIGINT UNSIGNED
3 book_id 小说ID BIGINT UNSIGNED 0 0表示全部作品
4 income_date 收入日期 DATE
5 income_account 订阅总额 INT UNSIGNED 0
6 income_count 订阅次数 INT UNSIGNED 0
7 income_number 订阅人数 INT UNSIGNED 0
8 create_time 创建时间 DATETIME
9 update_time 更新时间 DATETIME

# 支付模块

pay_alipay [支付宝支付]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id 主键 BIGINT UNSIGNED
2 out_trade_no 商户订单号 VARCHAR(64)
3 trade_no 支付宝交易号 VARCHAR(64)
4 buyer_id 买家支付宝账号 ID VARCHAR(16)
5 trade_status 交易状态 VARCHAR(32) TRADE_SUCCESS-交易成功
6 total_amount 订单金额 INT UNSIGNED 单位:分
7 receipt_amount 实收金额 INT UNSIGNED 单位:分
8 invoice_amount 开票金额 INT UNSIGNED
9 gmt_create 交易创建时间 DATETIME
10 gmt_payment 交易付款时间 DATETIME
11 create_time 创建时间 DATETIME
12 update_time 更新时间 DATETIME

pay_wechat [微信支付]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id 主键 BIGINT UNSIGNED
2 out_trade_no 商户订单号 VARCHAR(32)
3 transaction_id 微信支付订单号 VARCHAR(32)
4 trade_type 交易类型 VARCHAR(16) JSAPI-公众号支付 NATIVE-扫码支付 APP-APP支付 MICROPAY-付款码支付 MWEB-H5支付 FACEPAY-刷脸支付
5 trade_state 交易状态 VARCHAR(32) SUCCESS-支付成功 REFUND-转入退款 NOTPAY-未支付 CLOSED-已关闭 REVOKED-已撤销(付款码支付) USERPAYING-用户支付中(付款码支付) PAYERROR-支付失败(其他原因,如银行返回失败)
6 trade_state_desc 交易状态描述 VARCHAR(255)
7 amount 订单总金额 INT UNSIGNED 单位:分
8 payer_total 用户支付金额 INT UNSIGNED 单位:分
9 success_time 支付完成时间 DATETIME
10 payer_openid 支付者用户标识 VARCHAR(128) 用户在直连商户appid下的唯一标识
11 create_time 创建时间 DATETIME
12 update_time 更新时间 DATETIME

# 系统模块

sys_user [系统用户]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id BIGINT UNSIGNED
2 username 用户名 VARCHAR(50)
3 password 密码 VARCHAR(50)
4 name 真实姓名 VARCHAR(100)
5 sex 性别 TINYINT UNSIGNED 0-男 1-女
6 birth 出身日期 DATETIME
7 email 邮箱 VARCHAR(100)
8 mobile 手机号 VARCHAR(100)
9 status 状态 TINYINT UNSIGNED 1 0-禁用 1-正常
10 create_time 创建时间 DATETIME
11 update_time 更新时间 DATETIME

sys_role [角色]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id BIGINT UNSIGNED
2 role_name 角色名称 VARCHAR(100)
3 role_sign 角色标识 VARCHAR(100)
4 remark 备注 VARCHAR(100)
5 create_time 创建时间 DATETIME
6 update_time 更新时间 DATETIME

sys_user_role [用户与角色对应关系]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id BIGINT UNSIGNED
2 user_id 用户ID BIGINT UNSIGNED
3 role_id 角色ID BIGINT UNSIGNED
4 create_time 创建时间 DATETIME
5 update_time 更新时间 DATETIME

sys_menu [系统菜单]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id BIGINT UNSIGNED
2 parent_id 父菜单ID BIGINT UNSIGNED 0 一级菜单为0
3 name 菜单名称 VARCHAR(50)
4 url 菜单URL VARCHAR(200)
5 type 类型 TINYINT UNSIGNED 0-目录 1-菜单
6 icon 菜单图标 VARCHAR(50)
7 sort 排序 TINYINT UNSIGNED
8 create_time 创建时间 DATETIME
9 update_time 更新时间 DATETIME

sys_role_menu [角色与菜单对应关系]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id BIGINT UNSIGNED
2 role_id 角色ID BIGINT UNSIGNED
3 menu_id 菜单ID BIGINT UNSIGNED
4 create_time 创建时间 DATETIME
5 update_time 更新时间 DATETIME

sys_log [系统日志]

# 字段 名称 数据类型 主键 非空 默认值 备注说明
1 id BIGINT UNSIGNED
2 user_id 用户id BIGINT UNSIGNED
3 username 用户名 VARCHAR(50)
4 operation 用户操作 VARCHAR(50)
5 time 响应时间 INT UNSIGNED
6 method 请求方法 VARCHAR(200)
7 params 请求参数 VARCHAR(5000)
8 ip IP地址 VARCHAR(64)
9 create_time 创建时间 DATETIME
上次更新: 2 years ago