sql触发器如何用,有什么作用。最好列举三个、、、

 我来答
jun550328976
推荐于2016-06-14 · TA获得超过430个赞
知道小有建树答主
回答量:358
采纳率:0%
帮助的人:308万
展开全部
触发器就是一个特殊的存储过程,但是触发器没有输入参数,顾名思义是由某种特定的条件触发的。举个例子,如果你有2个表a,b其中a里面的id跟b里面的id绑定,a是学生基本信息表,b是学生选课信息表,假使某个同学被开除,那么a表里面该同学的信息就必须删除,那么竟然该同学都被开除了,b表里面的信息自然也都应该一并除去,这个时候就可以建立这样一个触发器在a表上,触发条件为delete,只要发现a表有信息删除,则自动删除b表中相应id的信息。这样可以保证整个系统的健壮性。不会出现bug(学生基本信息都删除但是选课信息还在的现象)
以下是一个实例:
create trigger t_delete_TranD//触发器的名字为t_delete_TranD
on TranD//触发器建立在表TranD上
for delete//表TranD上的delete操作是触发器执行的触发条件
as
begin//以下是触发器执行的内容
update ContainerPick
set Status = '3',
TranNo = null
from ContainerPick a,deleted d
where a.TranNo = d.TranNo and
a.ContainerPackNo = d.DistNo and
a.Status = '4'
if @@error<>0//执行失败的处理
begin
raiserror 33334 '恢复栈板状态失败!'
rollback
return
end
end
go
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式