失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > SQL server触发器中 update insert delete 分别给写个例子被。

SQL server触发器中 update insert delete 分别给写个例子被。

时间:2023-07-07 06:55:17

相关推荐

SQL server触发器中 update insert delete 分别给写个例子被。

SQL server触发器中 update insert delete 分别给写个例子以及解释下例子的作用和意思被, 万分感谢!!!!

主要想知道下各个语句的书写规范。

INSERT:

表1(ID,NAME)表2(ID,NAME)当用户插入表1数据后,表2也被插入相同的数据CREATETRIGGERTRI1ON表1FORINSERTASBEGININSERTINTO表2SELECT*FROMINSERTEDENDGO

DELETE:

表1(ID,NAME)表2(ID,AGE,GENDER)当用户删除表1某条ID的数据后,表2相应ID的数据也被删除CREATETRIGGERTRI2ON表1FORDELETEASBEGINDECLARE@idINTSELECT@idFROMDELETEDDELETE表2WHEREID=@idENDGO

UPDATE:

表1(ID,NAME)表2(ID,NAME)当用户更改表1NAME列数据后,表2相应ID的数据也同时更新CREATETRIGGERTRI3ON表1FORUPDATEASIFUPDATE(NAME)BEGINUPDATE表2SETA.NAME=B.NAMEFROM表2A,INSERTEDBWHEREA.ID=B.IDENDGO

-------------------------------------------------

insert 触发器示例

create trigger tri_insert on student for insert as declare @student_id char(10) select @student_id=s.student_id from student s inner join inserted i on s.student_id=i.student_id if @student_id='0000000001' begin raiserror('不能插入1的学号!',16,8) rollback tran end go

update触发器示例

create trigger tri_update on student for update as if update(student_id) begin raiserror('学号不能修改!',16,8) rollback tran end go

delete触发器示例

create trigger tri_delete on student for delete as declare @student_id varchar(10) select @student_id=student_id from deleted if @student_id='admin' begin raiserror('错误',16,8) rollback tran end 分享到: 上一篇: 数据结构课程设计(烟

如果觉得《SQL server触发器中 update insert delete 分别给写个例子被。》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。