我正在尝试创建一个数据库,用于存储每个家庭作业的学生成绩,我希望能够存储成绩以及该学生获得certin成绩的次数,例如学生获得了A+ 30 times
,每个学生的年级,以及学生的成绩等级。一个档次的值是多少,例如A is worth 4.3
。MySQL评级数据库结构
所以我想知道什么是建立我的MySQL数据库的最佳方式我需要添加什么,我需要放弃什么以及如何存储数字,例如4.3
。
我的数据库输出到目前为止
CREATE TABLE grades (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
grade INT UNSIGNED NOT NULL,
student_work_id INT UNSIGNED NOT NULL,
student_id INT UNSIGNED NOT NULL,
date_created DATETIME NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE work (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
student_id INT UNSIGNED NOT NULL,
title TEXT NOT NULL,
content LONGTEXT NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE IF NOT EXISTS student (
id int(8) NOT NULL auto_increment,
student varchar(20) NOT NULL,
PRIMARY KEY (`id`)
)
例子。
student | grade | count
1 A 10
1 C 2
1 F 4
2 B 20
2 B- 3
2 C+ 10
student | grade | points
1 A 4.3
2 B+ 3.3
3 B- 2.7
4 D+ 1.3
student | total grades
1 90
2 80
3 100
4 1
我确实有一张学生表和年级表以及一张将他们两者联系起来的表格。 – teach 2010-01-08 02:11:25
那么我的桌子应该怎么样呢? – teach 2010-01-08 02:13:07
基本数据: 学生表{id,name,<其他人口统计数据} 年级表{id,grade,fk_points} 关系表{id,fk_student,fk_grade} Point Table {id,point } – decompiled 2010-01-08 02:31:59