sql server 2000触发器的问题

来源:百度知道 编辑:UC知道 时间:2024/06/28 22:45:28
有3个表:book(主码 bno)student(主码 sno)stu_book(主码 sno bno)建一个触发器,要求用触发器实现stu_book的外键约束

不好意思啊,我刚学,问的问题菜了点,别笑我

可以这样写
CREATE TRIGGER tr_xxx_i ON stu_book
FOR INSERT AS
IF NOT EXISTS(SELECT * FROM book a,inserted b WHERE a.bno = b.bno)
RAISERROR (' 不存在此书号!', 11, 1)
IF NOT EXISTS(SELECT * FROM student a,inserted b WHERE a.sno = b.sno)
RAISERROR (' 不存在此学号!', 11, 1)

你问的问题确实有些奇怪。

首先外键约束可以在你设计表中实现。而且你可以直接在stu_book表上加外键约束,为什么要用触发器呢?
如果你非要写触发器去实现,相当于你写了触发器去实现系统去实现的约束。