SQLServer触发器实例
一、简介
SQL Server 触发器是数据库系统中的一种特殊的程序语言,也是 SQL Server 的一种用来实现特殊任务的特殊处理方式。它在运行和执行某些操作之前,可以自动执行一些指定的代码,以完成特定任务。触发器应用核心就是将增加、删除、更新数据库中的某些表记录,映射到另外一个表中,并做出一定的处理。
二、表结构
下面是本文中例子所使用的表结构:
供应商表:SUPPLIER
产品表:PRODUCT
采购表:PURCHASE
三、实例说明
本实例主要是演示当用户采购商品的时候,要在采购表和产品表中自动更新供应商表的数据。
1. 建立触发器
以供应商表为例:
CREATE TRIGGER tr_update_supplier
ON PURCHASE
FOR INSERT
AS
BEGIN
UPDATE SUPPLIER
SET SUP_NAME = (SELECT p.SUP_NAME FROM PRODUCT p WHERE p.PROD_ID = INSERTED.PROD_ID)
END
2. 在采购表中插入记录
INSERT INTO PURCHASE(PROD_ID, SUP_NAME, PURCHASE_NUM)
VALUES('P1001', 'HisenseTV', 200);
3. 查看结果
查看SUPPLIER表中的数据,如图:
四、总结
SQL Server触发器允许用户自动地在数据库中的某个操作发生时,执行自定义操作或代码语句,是一种重要的数据库处理技术。它使得数据的变动操作更加可靠,同时可减少开发时间。本文以一个实例说明了 SQL Server 触发器的使用方式,并提供了一个简单的应用实例。