但是学科不定的,而且总的学科不止10门,只是一次考试的学科不超过10科。
用方法一的话,XKn、RESULTn 的中的N可能超过30,这样冗于是不是太大点了?冗于太大的话查询还能快吗?

解决方案 »

  1.   

    注意:两个方法在语义上是不同的,或者说,存储的内容将是不同的!
    在方法一中,可以描述每个学生每门学科每个考次的成绩及考试状态(如:作弊、缺考等),而在方法二中,只能描述每个学生每个考次的考试状态(如:作弊、缺考等)及每门学科的成绩!
    一般来说,一个学生可能在一个考次中缺考全部的学科,也可能缺考部分学科。要解决这个问题,必须在方法一中再增加lb1、lb2...lbn等n个字段。
    出现这个问题,究其原因,还是因为冗余造成的。
      

  2.   

    一百万条记录!!!好多
    我想不会是一个学期所产生的吧?提供一个想法:
    用方法二,把TEST表分成多个表,表结构都是一样的,只不过在表名用
    TEST_1,TEST_2,TEST_N区分开来,其中的1,2,N是代表学期ID
    还有,楼上 SE1()说得对,在方法一中还要增加LB1,LB2,LBN,这样的话还是有很多的冗余