我正在尝试创建一个数据库,用于存储每个家庭作业的学生成绩,以及学生获得认证成绩的次数,例如,每个学生都获得了A+ 30 times,以及学生获得了多少成绩。以及一个分数值多少分,比如A is worth 4.3。
所以我想知道构建我的MySQL数据库的最好方法是什么,我需要添加什么,我需要删除什么,以及如何像4.3那样存储数字。
到目前为止我的数据库
CREATE TABLE grades (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
grade INT UNSIGNED NOT NULL,
student_work_id INT UNSIGNED NO
我正在为那些不知情的人设计一个BTEC评分计算器;BTEC是一种在英国完成的资格认证,它有一个主要基于课程作业的“不同”点数评分系统。有几个单元(20个),每个单元你可以在每个单元上获得一张通行证,优点和优异成绩。每一次及格、成绩和成绩加起来就是这么多分,这些分加起来就是总成绩。
例如,120分的分数将映射到PPP等级,240分将映射到MMM,依此类推。
我已经基于下面的伪代码写了一个程序:
Prompt for student name:
Operator enters student name
Operator enters their grade units one at a time
我的程序基本上是一个数组形式的成绩册,值存储在那个数组中。我认为如果我告诉你我的程序在运行后会做些什么会更好。
正如你所看到的,它成功地运行了,但是我正在尝试在输入期末成绩后显示存储在我的数组(成绩册)中的所有元素(成绩)。所以在这次测试中,我输入了4个年级,但我设置代码的方式是,在运行后,它会在每个年级输入后显示成绩册中的每个成绩,而不是在输入最终成绩后显示,这取决于需要更改的成绩数量。下面是我的代码:
import java.lang.reflect.Array;
import java.util.Scanner;
public class GradeBooks {
public
我的成绩数据库有时一天会刷新几次,如果没有输入新的成绩,每次都可能是相同的成绩。我的查询找到了每个课程编号每天的最大成绩,所以现在我希望仅在成绩发生变化时才查找和显示成绩,这表明已经输入了新的成绩。如果有人能给我指个方向的话。谢谢!
select distinct convert(date,GradeDate)'Grade Date',
max(gradescore) 'Grade Score', coursenbr
from resultstbl
group by Gradedate, coursenbr
order by coursenbr
以下是我的结
我有两张桌子
表1。
Name Grade Math
---------------------------
Chris A 30
Julie AA 35
Ross AA 32
表2
Name English
-------------------------
Julie 29
Chris 22
Ross 20
我想得到AA级学生数学英语成绩的总和。我怎么能这么做?请帮帮忙。
编辑:我想得到数学AA级学生的英语成绩之和,
我正在使用CanCan进行授权。下面的代码以我想要的方式为用户工作,即它允许非管理员用户查看自己的页面,但不允许其他用户的页面。然而,定义成绩册功能的那行既允许访问用户的成绩册(它与属于用户的成绩册是一对一的关系),也允许查看其他用户的成绩册。
class Ability
include CanCan::Ability
def initialize(user)
user ||= User.new
if user.has_role? :admin
can :manage, :all
else
can :read, User, :id =&