免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3318 | 回复: 8

MYSQL新手请教表结构设计问题 [复制链接]

论坛徽章:
0
发表于 2011-10-28 22:52 |显示全部楼层
本帖最后由 mmx384 于 2011-10-28 22:54 编辑

本人是一个小学教师,为学校设计了一个ACCESS网站,以方便自己平时计算成绩管理学籍等工作,现在要扩展到全县的学校,转到MYSQL,本人完全新手,请问各位高手一个表设计问题。

有两个基础表:

cjlib成绩表(估计每年产生三十万条记录)
cjid, xq, gradeid,classid,kstype,kstime,stunum,yu,shu,ying,mtime
1,2010,5,4,期中考试,2010-11-8,1022000254,80,90,100,2010-11-9

变动表(成绩表二分之一记录)
sch        xq        gradeid        class        id stunum         chtype        mtime
XX小学        2010        5        4        1022000254        在编学生        2010-9-1
XX小学        2011        5        4        1022000254        转出        2011-2-2

考虑成绩表每年100万或者1000万的记录,要对成绩表分班级或分年级统计、分析,我这样的表设计有没有什么问题?今天看到论坛所说的3NF,这里要不要成绩表的列gradeid,classid拆分?

论坛徽章:
0
发表于 2011-10-31 10:25 |显示全部楼层
各位高手指点一下啊,是因为我的例子上面的描述不够无法判断,还是问的非常弱智?

论坛徽章:
9
每日论坛发贴之星
日期:2016-01-04 06:20:00数据库技术版块每日发帖之星
日期:2016-01-04 06:20:00每日论坛发贴之星
日期:2016-01-04 06:20:00数据库技术版块每日发帖之星
日期:2016-01-04 06:20:00IT运维版块每日发帖之星
日期:2016-01-04 06:20:00IT运维版块每日发帖之星
日期:2016-01-04 06:20:00综合交流区版块每日发帖之星
日期:2016-01-04 06:20:00综合交流区版块每日发帖之星
日期:2016-01-04 06:20:00数据库技术版块每周发帖之星
日期:2016-03-07 16:30:25
发表于 2011-10-31 22:09 |显示全部楼层
要对成绩表分班级或分年级统计、分析


经常要做这个操作的话,你现在的表结构已经很合理了,gradeid和classid都已经normalize了

论坛徽章:
0
发表于 2011-11-01 09:23 |显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
发表于 2011-11-01 09:52 |显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
发表于 2011-11-02 10:18 |显示全部楼层
本帖最后由 mmx384 于 2011-11-02 10:26 编辑

回复 4# kerlion

谢谢楼上两位回复!
   
对引擎没概念,现在正对能看懂的精华贴子一个一个消化(之前用ACCESS,索引的概念都没有)

论坛徽章:
0
发表于 2011-11-02 10:25 |显示全部楼层
回复 5# kerlion


    因为成绩表变动表记录最多,所以只列出了这两个表,重点考虑这两个表的问题,其实一共有十多个表

http://www.mmx384.com,用户名:user,密码:password,各位随意参观

从卓越买了几本书,先研究一下

论坛徽章:
2
摩羯座
日期:2014-05-29 17:38:40数据库技术版块每日发帖之星
日期:2016-08-05 06:20:00
发表于 2011-11-02 12:00 |显示全部楼层
说大点,从需求入手,通过ER图先分析数据关系,保留扩展
说具体点,从你这两个来看,应该是扩展关系,建议设定key以保障2表的对应完整,这些数据都依赖于学生,为何不以学生ID作为主键呢?
命名问题:为方便你后期开发维护,你的命名一定要统一
cjid, xq, gradeid,classid,kstype,kstime,stunum,yu,shu,ying,mtime 这样的列名,以后你自己都会头疼

论坛徽章:
0
发表于 2011-11-02 13:23 |显示全部楼层
回复 8# devilkin0312


    谢谢指点,表命名确实有问题,我自己设计的表,自己写ASP代码的时候常常要打开数据表查看字段名称,虽然知道这样做后期维护非常艰难,但是没有好的方法,不知道那些大型站点,是怎么避开这个问题的?

过些时候,我把自己的整体规划再贴上来。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP