大家都知道SQL Server触发器分为DDL、DML和登录触发器。其中DML触发器对于一个表来说,又可分为Insert、Update、Delete三种触发器。也许触发器的功能作用大家都清楚了,可是大家知道当批量Update或者批量Delete数据的时候,触发器如何工作吗?在这种情况下,触发器不是逐条触发的(也就是说不是删除一条记录的同时,触发器开...
1 CREATE [ OR ALTER ] TRIGGER [ schema_name . ]trigger_name 2 ON { table } 3 [ WITH <dml_trigger_option> [ ,...n ] ] 4 { FOR | AFTER } 5 { [ INSERT ] [ , ] [ UPDATE ] [ , ] [ DELETE ] } 6 AS { sql_statement [ ; ] [ ,...n ] } 7 8 <dml_trigger_optio...
FOR INSERT、UPDATE 或 DELETE AS T-SQL 语句 注意:触发器名称是不加引号的。 create trigger stuaddTrigger on stu for insert as insert into stu values ( 10 , ' abc ' , ' 女 ' , 29 ) // 当执行以下语句时,会触发stuaddTrigger,结果会多两行数据 insert into stu values ( 9 , ' test ' ...
CREATE TRIGGER dbo.trGroups ON groups AFTER INSERT, UPDATE, DELETE AS -- This trigger submits a cached rates delete job for modified groups. -- It also updates the groups' last modified columns for modified groups. -- It also updates the groups' state (if currently unspecified) based on ...
DROP TRIGGER LOG_AUX; END -- 创建触发器 GO CREATE TRIGGER LOG_AUX ON T_SAL_ORDERENTRY FOR INSERT, UPDATE, DELETE AS IF UPDATE(FAUXPROPID) --字段更新添加 BEGIN INSERT INTO SO_AUX_LOG SELECT A.FENTRYID, B.FAUXPROPID, A.FAUXPROPID, GETDATE(), 'UPDATE\INSERT' ...
1USE jxsk2GO3DROP TRIGGER TRIGGER_DC4GO (2) 单击 “工具栏”中的“执行(x)”按钮,即可执行上述T-SQL语句,如下图; (3) 在“对象资源管理器”中选择“数据库”→“jxsk”→“表”→“dbo.C”→“触发器”,已看不到原有触发器,如下图;举报/反馈 发表评论 发表 作者...
(50), MODIFIEDDATE DATETIME ); GO CREATE TRIGGER TR_INSERT ON TA INSTEAD OF INSERT AS BEGIN --接受标识列值的表变量 DECLARE @MyTableVar TABLE( ID INT, [NAME] VARCHAR(10), ModifiedDate DATETIME); INSERT TA OUTPUT INSERTED.scrapreasonid,INSERTED.[NAME],INSERTED.ModifiedDate INTO @MyTable...
(50), MODIFIEDDATE DATETIME ); GO CREATE TRIGGER TR_INSERT ON TA INSTEAD OF INSERT AS BEGIN --接受标识列值的表变量 DECLARE @MyTableVar TABLE( ID INT, [NAME] VARCHAR(10), ModifiedDate DATETIME); INSERT TA OUTPUT INSERTED.scrapreasonid,INSERTED.[NAME],INSERTED.ModifiedDate INTO @MyTable...
(50), MODIFIEDDATE DATETIME ); GO CREATE TRIGGER TR_INSERT ON TA INSTEAD OF INSERT AS BEGIN --接受标识列值的表变量 DECLARE @MyTableVar TABLE( ID INT, [NAME] VARCHAR(10), ModifiedDate DATETIME); INSERT TA OUTPUT INSERTED.scrapreasonid,INSERTED.[NAME],INSERTED.ModifiedDate INTO @MyTable...
for update... as Transact-SQL # 创建insert类型触发器 --创建insert插入类型触发器 if (object_id('tgr_classes_insert', 'tr') is not null) drop trigger tgr_classes_insert go create trigger tgr_classes_insert on classes for insert --插入触发 ...