官网数据库初步设计

注意,虽然不同模块的评论分表,但是要保证结构一样。前缀为"com_"
存储引擎暂时统一为MyISAM

用户表

user

字段 类型 附加属性 备注
id int 主键自增 .
username char(32) . 用户名,登录用 暂时被弃用,不过考虑到可能网站未来有自己独立的用户系统,仍然保留
password char(32) . 密码,md5加密32位 暂时被弃用,不过考虑到可能网站未来有自己独立的用户系统,仍然保留
nickname char(32) . 昵称,展示用 暂时被弃用,不过考虑到可能网站未来有自己独立的用户系统,仍然保留
regis_time int unsigned 注册时间戳 int,考虑是否保留
login_time int unsigned 最后一次登录时间戳 int,考虑是否保留

管理员表

字段 类型 附加属性 备注
id int 主键自增 .
userame char(32) . 管理员名
password char(64) . 加密后的密码

QQ授权用户信息表

qq_user
(从user表垂直拆分出的另一张表,设计业务逻辑的时候可以把这张表看成是user表里面的东西,和user表里的数据是一一对应关系)

字段 类型 附加属性 备注
id int 主键自增 .
user_id int index user表外键
openid char(32) . .
access_token char(32) . .
refresh_token char(32) . .
user_info text . 用户信息的php序列化存储(缓存用),格式见后面(不是json)

user_info 格式(暂定):

object=>{
    nick_name:(string)    //用户在QQ空间的昵称,如"Peter"
    figureurl:(string)    //大小为40×40像素的QQ头像URL,如"http://qzapp.qlogo.cn/qzapp/111111/942FEA70050EEAFBD4DCE2C1FC775E56/30"
}

活动表

activity
字段 类型 附加属性 备注
id int 主键自增 .
title char(60) . 标题
abstract varchar(150) . 简介
schedule text . 时刻表,php序列化存储(serialize),格式见后面(不是json)
sign_up_url text . 报名外链

schedule格式:

array=>[
    object=>{
        begin_time:(int)    //开始时间戳
        end_time:(int)      //结束时间戳
        place:(string)      //地点,e.g "地点"
        stage:(string)      //阶段,e.g "开始报名"
    }
]

报道表

report
字段 类型 附加属性 备注
id int 主键自增 .
title char(60) . 标题
abstract varchar(150) . 简介
create_time int unsigned 创建时间戳 int
update_time int unsigned 更新时间戳 int

评论表

com_report
字段 类型 附加属性 备注
id int 主键自增 .
user_id int index user表外键
article_id int index report表外键
content text . 内容
thumb_up text . 给该评论点赞的用户的序列化存放,详细格式见后
create_time int unsigned 创建时间戳 int

thumb_up 格式:

array=>[
    user_id:(int)   //点赞的用户的id
]
(单纯只是个数组)

作品集锦

forilegium
字段 类型 附加属性 备注
id int 主键自增 .
title char(60) . 标题
abstract varchar(150) . 简介
create_time int unsigned 创建时间戳 int
update_time int unsigned 更新时间戳 int

技术分享(还要更改)

课程表

course
字段 类型 附加属性 备注
id int 主键自增 .
type tinyint index 0:硬件;1:软件;2:多媒体
abstract varchar(150) . 简介
title char(50) . 标题

章节表

chapter
字段 类型 附加属性 备注
id int 主键自增 .
course_id int index course表外键
num int . 第几章
title char(60) . 标题
update_time int unsigned 更新时间戳 int
audio_url text 默认为"0" 影音文件外链,为"0"代表没有

评论表

com_chapter
字段 类型 附加属性 备注
id int 主键自增 .
user_id int index user表外键
article_id int index chapter表外键
content text . 内容
thumb_up text . 给该评论点赞的用户的序列化存放,详细格式见后
create_time int unsigned 创建时间戳 int

thumb_up 格式:

array=>[
    user_id:(int)   //点赞的用户的id
]
(单纯只是个数组)

用户课程表

user_course
字段 类型 附加属性 备注
id int 主键自增 .
user_id int index user表外键
course_id int index course表外键
complete tinyint 默认0,unsigned 完成到第几章

技术问答

提问表

question
字段 类型 附加属性 备注
id int 主键自增 .
user_id int index user表外键
chapter_id int index chapter表外键
content text . 内容
create_time int unsigned 提交时间戳 int

回答表

answer
字段 类型 附加属性 备注
id int 主键自增 .
user_id int index user表外键
question_id int index question表外键
content text . 内容
create_time int unsigned 提交时间戳 int

维修技巧文章表

repair_trick
字段 类型 附加属性 备注
id int 主键自增 .
title char(60) . 标题
abstract varchar(150) . 简介
create_time int unsigned 创建时间戳 int
update_time int unsigned 更新时间戳 int

评论表

com_repair_trick
字段 类型 附加属性 备注
id int 主键自增 .
user_id int index user表外键
article_id int index repair_trick表外键
content text . 内容
thumb_up text . 给该评论点赞的用户的序列化存放,详细格式见后
create_time int unsigned 创建时间戳 int

thumb_up 格式:

array=>[
    user_id:(int)   //点赞的用户的id
]
(单纯只是个数组)

反馈

提问表

feedback
字段 类型 附加属性 备注
id int 主键自增 .
user_id int index user表外键
content text . 内容
create_time int unsigned 提交时间戳 int

回答表

feedback_response
字段 类型 附加属性 备注
id int 主键自增 .
feedback_id int index feedback表外键
admin_id int index admin表外键
question_id int index question表外键
content text . 内容
create_time int unsigned 提交时间戳 int

维修

预约表

appointment
字段 类型 附加属性 备注
id int 主键自增 .
name varchar(80) . 姓名
phone_num char(11) . 手机号
item_name varchar(80) . 电器名称
campus tinyint 默认0,unsigned 校区,0:南校;1:北校
dormitory varchar(30) . 宿舍
under_exam tinyint 默认0,unsigned 是否审核通过,0为未审核,1为通过,2为不通过
detail text . 描述

你可能感兴趣的:(官网数据库初步设计)