繁体   English   中英

如何使用存储过程将值插入表中

[英]How to insert values into a table using stored procedures

我有这些表:

在此处输入图像描述

在此处输入图像描述

我想在 Grade 表中插入一个成绩,学生 ID 对应于 Student 表中的一个学生。 在我插入成绩之前,我想验证我的学生是否活跃,因此活跃字段的值必须为 1。我创建了一个存储过程来执行此操作。 看来我不明白如何插入 select 加入,这是我的尝试

这是我的尝试:

INSERT INTO Grade  
VALUES(@gradeId, @grade, @examDate, @professorId, @subjectId, @studentId, @active) 

SELECT g.grade, g.examDate, g.professorId, g.subjectId, g.studentId
FROM grade g
JOIN student s ON s.studentId = g.studentId
WHERE s.active = 1 and @studentId = s.StudentId

用这个语句解决:

INSERT INTO Grade (GradeId, Grade, ExamDate, ProfessorId, SubjectId, StudentId, Active ) 
SELECT @gradeId, @grade, @examDate, @professorId, @subjectId, @studentId, @active
FROM student s
WHERE s.studentId = @studentId AND s.Active = 1

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM