到目前为止,我只想感谢你们的大力帮助。我和你们有另一个挑战,而且我一直在努力让它发挥作用,但我可能已经在这个问题上筋疲力尽了。我是一名新的SQL学生,如果需要的话,可以减少一些麻烦。
目标是创建一个程序,通过提供学生ID,班级和字母等级来更新某人的成绩。
这是我拥有的
CREATE PROCEDURE AssignGradeToStudent
@[Class Number] char,
@student int,
@Grade char,
AS
BEGIN
UPDATE Enrollment
SET [Grade] = COALESCE(@Grade,[Grade])
WHERE [Class Number] = [Class Number]
AND [Student] = Student
END
答案 0 :(得分:2)
以下情况如何?
CREATE PROCEDURE AssignGradeToStudent
@ClassNumber char,
@Student int,
@Grade char
AS
BEGIN
UPDATE Enrollment
SET [Grade] = COALESCE(@Grade,[Grade])
WHERE [Class Number] = @ClassNumber
AND [Student] = @Student
END
GO
答案 1 :(得分:2)
这有很多问题。
将参数从@[Class Number]
更改为@ClassNumber
删除@Grade char
您的where子句似乎不正确,您可能希望将其更改为
Where [Class Number] = @ClassNumber
AND [Student] = @Student