创建触发器时候报错。。一直没找到。。%>_<%求助啊。。。
约束是:在课程表插入一条数据的时候,如果课程的Cflag标记是1也就是必修,就为每个学生在成绩表中插入一条数据
就是不知道哪儿出错了。。。。小妹数据库还是入门级。。。求大虾们帮忙。。%>_<%
还有一个地方觉得很奇怪:
求助啊。。。马上就要跟老师检查了。。%>_<%
[解决办法]
触发器用这个试试,你还有student表没给我,不过算了。你自己给东西慢而已
CREATE TRIGGER insert_course ON Course
FOR INSERT
AS
DECLARE @Cno INT --@Cno用于接收插入的课程号
DECLARE @Cflag BIT --@flag用于接收课程的是否选修
DECLARE @Sno INT --@Sno用于接收学生学号
SELECT @Cno = Cno
FROM inserted
SELECT @Cflag = Cflag
FROM inserted
DECLARE my_cursor CURSOR
FOR
SELECT Sno
FROM Student --声明游标
OPEN my_cursor --打开游标
FETCH NEXT FROM my_cursor INTO @Sno --通过游标逐个读取学生学号赋给变量
IF ( @Cflag = 1 )
BEGIN
WHILE ( @@fetch_status = 0 )
BEGIN
INSERT INTO Greade
( sno, cno )
VALUES ( @Sno, @cno )
FETCH NEXT FROM my_cursor INTO @Sno
END
END
CLOSE my_cursor --关闭游标
DEALLOCATE my_cursor --释放资源
go