利用T-SQL语句创建一个带有输入参数的存储过程ProcInsert,向Score表中插入一条记录(带4个参数:学号、课程号、平时成绩、期末成绩), 并查询该学生的姓名、选修的所有课程名称,平时成绩和期末成绩(根据录入的学号查询,存储过程只有输入参数,以结果集的形式返回数据)。创建完后调用该存储过程。
时间: 2023-12-03 22:47:09 浏览: 54
以下是创建存储过程ProcInsert的T-SQL语句:
```sql
CREATE PROCEDURE ProcInsert
@StudentID INT,
@CourseID INT,
@UsualScore DECIMAL(5,2),
@FinalScore DECIMAL(5,2)
AS
BEGIN
INSERT INTO Score(StudentID, CourseID, UsualScore, FinalScore)
VALUES(@StudentID, @CourseID, @UsualScore, @FinalScore)
SELECT Student.Name, Course.Name, Score.UsualScore, Score.FinalScore
FROM Score
INNER JOIN Student ON Score.StudentID = Student.ID
INNER JOIN Course ON Score.CourseID = Course.ID
WHERE Score.StudentID = @StudentID
END
```
调用存储过程的代码如下:
```sql
EXEC ProcInsert @StudentID = 1, @CourseID = 1, @UsualScore = 80, @FinalScore = 90
```
该代码将向Score表中插入一条学号为1,课程号为1,平时成绩为80,期末成绩为90的记录,并返回该学生的姓名、选修的所有课程名称,平时成绩和期末成绩。
阅读全文