在teaching数据库中,在course表中创建一个UPDATE触发器(trig_cno),该触发器防止用户修改course表的课程号。
时间: 2024-02-13 14:05:01 浏览: 148
Oracle通过触发器或者同义词避免用户修改表结构
以下是在teaching数据库中,在course表中创建一个防止用户修改课程号的UPDATE触发器(trig_cno)的SQL语句:
```
CREATE TRIGGER trig_cno
BEFORE UPDATE ON course
FOR EACH ROW
BEGIN
IF NEW.cno <> OLD.cno THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = 'Cannot modify cno in course table.';
END IF;
END;
```
这个触发器会在每次尝试更新course表的记录之前触发,并检查更新后的课程号是否与原课程号相同。如果不同,就会抛出一个SQL异常,阻止更新操作。
阅读全文