QtechOj数据库(我们的设计)
来源:互联网 发布:淘宝装修用什么软件ps 编辑:程序博客网 时间:2024/06/18 13:10
QtechOj数据库
自从和增兄搭伙一起弄OJ之后,倍感精神,前天我们就把数据库搭建好了。内容如下,欢迎大家指正不合理的地方。我们的数据库是照着hustoj的数据库改动的。图为hustoj原版数据库,改动地方均用红色和灰色表示了出来,通知也感谢hustoj的支持!
数据库设计我们目前只把第一版需要完成的进行了改动。论坛方面两人有一些争议,所以放在第二版实现。
通过这次数据库设计,让我长进很多。一开始我对数据库一直都是一个很轻视的态度,但是现在我则发现了,用面向对象的思想去思考数据库,数据库的设计真的决定了以后整个项目的维护性、可移植性、稳定性、资源合理利用性等多方面。
HustOj数据库(r1292)
序号
表名
作用
我们的修改
1
compileinfo
记录编译错误记录
第一版需完成
2
contest
竞赛表
第一版需完成
改动
3
contest_problem
竞赛题目
第一版需完成
不改
4
loginlog
登入日志
第一版需完成
留着防攻击
5
消息列表
第二版处理
6
news
新闻表
第三版处理
7
online
???
删除
8
privilege
权限授予
删除
9
problem
题目表
第一版需完成
改动
10
reply
论坛(帖子及回复)表
第二版处理
11
runtimeinfo
运行时错误信息
第一版需完成
12
sim
相似度检测表
第二版处理
13
solution
程序运行结果记录
第一版需完成
改动
14
source_code
提交的源码
第一版需完成
15
topic
论坛帖子表
第二版处理
16
users
用户信息
第一版需完成
改动
17
custominput
用于在线IDE
删除
18
admin
管理员表
第一版需完成
新添加
Hustoj开源项目:http://code.google.com/p/hustoj/
Hustoj演示平台:http://hustoj.sinaapp.com/
Hustoj外挂BBS:http://hustoj.sinaapp.com/bbs/
backHome
compileinfo
记录编译错误的提交号(id)及原因
字段名
类型
长度
是否允许为空
备注
solution_id
int
11
N
主键(提交id,即RunID)
error
text
Y
编译错误原因
backHome
contest
竞赛表
字段名
类型
长度
是否允许为空
备注
我的改动
contest_id
int
11
N
竞赛id(主键)
user_id
varchar
20
N
用户id(外键)
创建者id
title
varchar
255
Y
竞赛标题
start_time
datetime
Y
开始时间(年月日时分)
end_time
datatime
Y
结束时间(年月日时分)
defunct
char
1
N
是否屏蔽(Y/N)
description
text
Y
描述(在此版本中未用)
准备使用
private
tinyint
4
公开/内部(0/1)
是否需要密码~
langmask
int
11
语言
保留,不同老师需要布置不同语言的作业
password
varchar
20
Y
添加的比赛密码
backHome
contest_problem
竞赛题目
字段名
类型
长度
是否允许为空
备注
problem_id
int
11
N
题目id
contest_id
int
11
Y
竞赛id
title
char
200
N
标题
num
int
11
N
竞赛中题目编号
backHome
loginlog
登入日志(不管是否登入成功都记录)
字段名
类型
长度
是否允许为空
备注
user_id
varchar
20
N
用户id
password
varchar
40
Y
密码(不一定正确)
ip
varchar
100
Y
登录的ip
time
datetime
Y
登入时间
backHome
站内消息系统
字段名
类型
长度
是否允许为空
备注
我们的改动
mail_id
int
11
N
消息编号
to_user
varchar
20
N
接收者
from_user
varchar
20
N
发送者
title
varchar
200
N
标题
content
text
Y
内容
new_mail
tinyint
1
N
新消息(1/0)
reply
tinyint
4
Y
回复
in_date
datetime
Y
时间
defunct
char
1
N
是否屏蔽(Y/N)
backHome
news
新闻(首页显示)
字段名
类型
长度
是否允许为空
备注
news_id
int
11
N
新闻编号(主键)
user_id
varchar
20
N
用户账号
title
varchar
200
N
新闻标题
content
text
N
内容
time
datetime
N
更新时间
importance
tinyint
4
N
关键字???
defunct
char
1
N
是否屏蔽(Y/N)
backHome
Online(已删除)
字段名
类型
长度
是否允许为空
备注
hash
varchar
32
N
主键
ip
varchar
20
N
ua
varchar
255
N
refer
varchar
255
Y
lastmove
int
10
N
firsttime
int
10
Y
uri
varchar
255
Y
backHome
Privilege(已删除)
用户分组
字段名
类型
长度
是否允许为空
备注
user_id
char
20
N
用户帐号
rightstr
char
30
N
分组
defunct
char
1
N
是否屏蔽(Y/N)
backHome
problem
题目表
字段名
类型
长度
是否允许为空
备注
我们的改动
problem_id
int
11
N
题目编号,主键
title
varchar
200
N
标题
description
text
Y
题目描述
inupt
text
Y
输入说明
output
text
Y
输出说明
sample_input
text
Y
输入参照
sample_output
text
Y
输出参照
spj
char
1
N
是否为特别题目
hint
text
Y
暗示
source
varchar
100
Y
来源
in_date
datetime
Y
加入时间
time_limit
int
11
N
限时(秒)
memory_limit
int
11
N
空间限制(MByte)
defunct
char
1
N
是否屏蔽(Y/N)
accepted
int
11
Y
总ac次数
submit
int
11
Y
总提交次数
solved
int
11
Y
解答(未用)
删除
backHome
reply
论坛(帖子及回复)(Web Board)
字段名
类型
长度
是否允许为空
备注
rid
int
11
N
帖子序号(主键)
author_id
varchar
20
N
作者帐号
time
datetime
N
发布时间
content
text
N
帖子内容
topic_id
int
11
N
帖子分组
status
int
2
N
状态(0:正常,1:锁定,2:删除)
ip
varchar
30
N
发帖子者ip
backHome
runtimeinfo
运行错误信息(Runtime Error)
字段名
类型
长度
是否允许为空
备注
solution_id
int
11
N
运行id(主键)
error
text
Y
错误记录
backHome
sim
相似度检测
字段名
类型
长度
是否允许为空
备注
s_id
int
11
N
提交号soltiotn_id(主键)
sim_s_id
int
11
Y
与s_id相似的soltion_id
sim
int
11
Y
相似度(50-100)
backHome
solution
程序运行结果记录
字段名
类型
长度
是否允许为空
备注
我们的改动
solution_id
int
11
N
运行id(主键)
problem_id
int
11
N
问题id
user_id
char
20
N
用户id
time
int
11
N
用时(秒)
memory
int
11
N
所用空间()
in_date
datetime
N
加入时间
result
smallint
6
N
结果(4:AC)
language
tinyint
4
N
语言
ip
char
15
N
用户ip
删除
contest_id
int
11
Y
所属于竞赛组
valid
tinyint
4
N
是否有效???
num
tinyint
4
N
题目在竞赛中的顺序号
code_lenght
int
11
N
代码长度
judgetime
datetime
Y
判题时间
删除
pass_rate
decimal
2
N
通过百分比(OI模式下可用)
删除
backHome
source_code
记录源代码
字段名
类型
长度
是否允许为空
备注
solution_id
int
11
N
运行id(主键)
source
text
N
源代码
backHome
topic
论坛(答辩)帖子主题
字段名
类型
长度
是否允许为空
备注
我们改的
tid
int
11
N
帖子编号(主键)
title
varbinary
60
N
标题
status
int
2
N
状态(0:未锁定,1:锁定)
top_level
int
2
N
置顶等级(0,1:题目置顶,2:分区置顶,3:总置顶)
cid
int
11
Y
竞赛编号
pid
int
11
N
竞赛中题目编号
author_id
varchar
20
N
作者id
backHome
users
用户表
字段名
类型
长度
是否允许为空
备注
我们的改动
user_id
varchar
20
N
用户id(主键)
varchar
100
Y
用户E-mail
submit
int
11
Y
用户提交次数
solved
int
11
Y
成功次数
defunct
char
1
N
是否屏蔽(Y/N)
ip
varchar
20
N
用户注册ip
删除
accesstime
datetime
Y
用户注册时间
volume
int
11
N
上次用户浏览第几页
删除
language
int
11
N
语言
状态压缩使用
password
varchar
32
Y
密码(加密)
reg_time
datetime
Y
用户注册时间
nick
varchar
100
N
昵称
school
varchar
100
N
用户所在学校
grade
smallint
5
N
入学年份
新增
major
varchar
50
N
专业
新增
class
smallint
5
N
班级
新增
backHome
Custominput(已删除)
用于IDE
字段名
类型
长度
是否允许为空
备注
solution_id
int
11
N
用户id(主键)
Input_text
text
输入测试数据
backHome
admin
管理员表
字段名
类型
长度
是否允许为空
备注
admin_id
int
11
N
管理员id(主键)
admin_name
varchar
20
N
admin_pwd
varchar
32
N
- QtechOj数据库(我们的设计)
- 我们该如何设计数据库(三)
- 我们该如何设计数据库(一)
- 我们该如何设计数据库
- 我们该如何设计数据库
- 我们的设计流程
- 我们的设计流程
- 我们应当改变我们的设计习惯
- 马列矛盾理论告诉我们:数据库设计就是‘主体’和‘关系’的设计
- 我们该如何设计数据库(二)
- 我们该如何设计数据库(四)
- 我们该如何设计数据库(二)
- 我们该如何设计数据库(三)
- 我们该如何设计数据库(四)
- 我们该如何设计数据库(五)
- 在设计数据库时我们会考
- 我们该如何设计数据库:“普通——文艺——二逼”的区别
- 我们该如何设计数据库(三)(续)(1)
- jquery 循环
- Android 屏幕分辨率和精度
- 热敏传感器模块开发
- Axure介绍
- Android 4.4源码编译以及遇到的小问题
- QtechOj数据库(我们的设计)
- 20个PS技巧
- ubuntu 12.04硬盘分区,格式化,挂载
- 10步让你成为更优秀的程序员
- 设计模式概论
- ARC Helper
- http://www.blogjava.net/DLevin/archive/2011/11/23/364599.html
- 总结 1
- SQL更新日期格式的数据