看看我触发器的问题?

来源:百度知道 编辑:UC知道 时间:2024/06/03 16:43:02
下面的Trigger 有错误,想集联删,给我改一下:
Create Trigger Delete_ID
On Course
for delete ----studnet 表中外键CourseID为Course表中的主键
As
begin
delete From Student ,deleted
where Student.CourseID=deleted.CourseID
end

Create Trigger Delete_ID
On Course
for delete ----studnet 表中外键CourseID为Course表中的主键
As
begin
delete Student
where student.courseid=(select deleted.CourseID from deleted)
end

不是触发器的问题,是你sql语句的问题
不能同时删除两张表
你是想同时删除Student和deleted中与Course关联的数据吗,可以分开写

delete From Student
where Student.CourseID=:old.CourseID

delete From deleted
where deleted.CourseID=:old.CourseID

Create Trigger Delete_ID
On Course
for delete ----studnet 表中外键CourseID为Course表中的主键
As
begin
delete Student s
where student.CourseID exists(select deleted.CourseID from deleted d where s.CourseID=d.CourseID)
end

20

Create Trigger Delete_ID
On Course
for delete ----studnet 表中外键CourseID为Course表中的主键
As
begin
delete From Student
where CourseID in(select CourseID from deleted)
end ---------这就好了

Create Trigger Delete_ID
On Course