sql语句在课程表Courses_×××上定义一个触发器,当向表中新增一条记录时,自动在选修表Score_×××中为部分学生生成对该门课程的选修记录,成绩为随机生成的整数,范围在0-100之间。
时间: 2024-03-16 17:45:21 浏览: 52
sql实用案例
可以尝试使用如下 SQL 语句创建触发器:
```sql
CREATE TRIGGER add_score
ON Courses_×××
AFTER INSERT
AS
BEGIN
INSERT INTO Score_××× (学号, 课程编号, 成绩)
SELECT TOP 10 学号, inserted.课程编号, ROUND(RAND() * 100, 0)
FROM 学生表
CROSS JOIN inserted
ORDER BY NEWID()
END
```
需要将 `Courses_×××` 和 `Score_×××` 替换为实际的表名,同时根据实际情况修改学生表的名称和学号字段的名称。触发器会在向 `Courses_×××` 插入一条记录后,为部分学生生成对该门课程的选修记录,成绩为随机生成的整数。其中,`SELECT TOP 10` 用于指定生成选修记录的学生数量,可以根据实际情况进行修改。`ORDER BY NEWID()` 用于随机排序,保证每次生成的选修记录不同。
阅读全文