触发器运用实例3

在这里插入图片描述

要求:这里接到一个要求,需要审核更新之后自动去更新批准,
质保会签后自动更新标准话
原因:审核流程过于麻烦,部分人不愿意签名,一开始做的时候给了自动签名,也就是表单生成后给了默认值,但是前面没签字看起来太假了,于是改成了前面签完后,后面在自动给签上
过程:运用update 触发器 ,设置条件,前者签完字,更新后不为空,则更新后者,同时只更新目前的一条数据

那么需要做到的事情有:1、找到该表单的唯一编号
2、确认更新条件
3、确认更新语句

CREATE TRIGGER 签名触发器
   ON  [dbo].[铸件工艺单]
   AFTER UPDATE
AS 
BEGIN
	declare @a varchar(20);
	declare @b char(10);
	declare @c char(10);
	declare @d char(10);
	declare @e char(10);
	 select @a=工艺单编号 from inserted;
	 select @b=批准 from inserted;
	 select @c=会签1 from inserted;
	 select @d=会签 from inserted;
	 select @e=标准化 from inserted;
	 if (@b is not null and @d is null)
	 update 铸件工艺单 set 会签='24' where 工艺单编号=@a

	 if (@c is not null and @e is null)
	 update 铸件工艺单 set 标准化='37' where 工艺单编号=@a


END
GO

在这里我尝试试用了update ([])语句,但是发现这个更新是当前表单更新,与当前数据无关,只要这个表单做了更新操作,哪怕是 null更新为null ,这个语句也会执行 (可能跟软件的更新语句有关,软件有可能是全表更新的,所以这个语句一直是会执行的)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值