create trigger TgName
on tb
for update
as
    if update(recommend)
begin
 update tb set commenddate=(getdate()) from tb inner join inserted on tb.vlistid=Inserted.vlistid
end
关键在于Inserted表
触发器语句中使用了两种特殊的表:deleted 表和 inserted 表。
Deleted 表用于存储 DELETE 和 UPDATE 语句所影响的行的复本。在执行 DELETE 或 UPDATE 语句时,行从触发器表中删除,并传输到 deleted 表中。Deleted 表和触发器表通常没有相同的行。

Inserted 表用于存储 INSERT 和 UPDATE 语句所影响的行的副本。在一个插入或更新事务处理中,新建行被同时添加到 inserted 表和触发器表中。Inserted 表中的行是触发器表中新行的副本。

1.插入操作(Insert)
Inserted表有数据,Deleted表无数据

2.删除操作(Delete)
Inserted表无数据,Deleted表有数据

3.更新操作(Update)
Inserted表有数据(新数据),Deleted表有数据(旧数据)

转载于:https://www.cnblogs.com/weiyuxinghuacun/archive/2009/09/18/1569019.html

ms sql 触发器( 转)相关推荐

  1. MS SQL入门基础:管理触发器

    如果要显示作用于表上的触发器究竟对表有哪些操作,必须查看触发器信息.在MS SQL Server 中,有多种方法查看触发器信息.在本节我们将介绍两种常用的方法,即通过MS SQL Server 的管理 ...

  2. MS SQL SERVER2005更新触发器

    MS SQL SERVER2005更新触发器 为记录表test1中T01字段由'0'更新为'1'的发生时间,增加UPDATE触发器. SET ANSI_NULLS ON GO SET QUOTED_I ...

  3. mysql触发器中访问mssql数据表_[数据库]一个利用触发器(trigger)实现数据库表的审计功能(audit)的例子--针对ms sql实现...

    首先建立数据库Test,建立两个表,我们命名为grades和audit,利用audit实现对grades的审计功能,其中grades用于存放学生的成绩,包括"sdudentID,course ...

  4. Oracle\MS SQL Server的数据库多表关联更新UPDATE与多表更新

    一条Update更新语句是不能更新多张表的,除非使用触发器隐含更新.而表的更新操作中,在很多情况下需要在表达式中引用要更新的表以外的数据.我们先来讨论根据其他表数据更新你要更新的表 一.MS    S ...

  5. sql oracle 自增长字段,在Oracle、MySQL、MS SQL Server中创设自动增长字段

    在Oracle.MySQL.MS SQL Server中创建自动增长字段 好吧,今天面试有道题,要各个数据库怎么建立自增长字段,顺便复习一下吧,最近面试很多数据库问题... 一:Oracle Orac ...

  6. MS SQL 模仿ORACLE的DESC

    前言: 在ORACLE数据库的SQL*PLUS里面有个DES(DESCRIBE)命令,它可以返回数据库所存储对象的描述,如下所示 SQL> DESC STUDENT_SCORE Name Typ ...

  7. 记录MS SQL Server数据库

    目录 介绍 如何使用文档工具记录SQL Server数据库 使用dbForge Documenter for SQL Server 记录数据库 结论 介绍 所有公司都会积累各种数据,而这些数据最终不可 ...

  8. MS SQL入门基础:存储过程概述

    在大型数据库系统中,存储过程和触发器具有很重要的作用.无论是存储过程还是触发器,都是SQL 语句和流程控制语句的集合.就 本质而言,触发器也是一种存储过程.存储过程在运算时生成执行方式,所以,以后对其 ...

  9. MS SQL Server:分区表、分区索引详解

    MS SQL Server:分区表.分区索引 详解 1. 分区表简介 使用分区表的主要目的,是为了改善大型表以及具有各种访问模式的表的可伸缩性和可管理性.  大型表:数据量巨大的表.  访问模式: ...

最新文章

  1. 云计算与边缘计算协同发展的一些思考
  2. 人工智能的过去、现在和未来
  3. Linux上Core Dump文件的形成和分析
  4. office2007/2010/2013/2016安装出现错误:无法安装64位版本的office,因为在您的PC上......
  5. Struts2 (三)OGLN
  6. 需求编写的几点经验之谈
  7. python集合排序_排序算法集合
  8. 你说我导!微软玩转标题描述生成视频
  9. php的异常详解,php5异常处理详解_php
  10. ip地址配置 mongodb_MongoDB 3.6版本中bind_ip设置详解
  11. element表格固定某一行_elementui 表格 固定列+合计行
  12. mysql中的utf-8_永远不要在MySQL中使用UTF-8
  13. 一分钟更换惠普m132nw激光打印机硒鼓/粉盒
  14. Ubuntu下安装微信
  15. ACCESS sql语句数据类型转换 文本类型转换为数字类型
  16. 图像显著性论文(二)—Saliency Detection: A Spectral Residual Approach
  17. 模拟信号的调制与解调
  18. 用旧手机搭建服务器并实现内网穿透不需要root(本人亲测很多次最简单的一个)
  19. 前端将0到1的小数值转换成百分比
  20. android字体加横线

热门文章

  1. java程序崩溃怎么重启_android 异常崩溃后 重启app(进程守护方式实现)
  2. 文件系统缓存dirty_ratio与dirty_background_ratio两个参数区别
  3. 每日一题:leetcode341.扁平化嵌套列表迭代器
  4. 【Java学习笔记八】包装类和vector
  5. BZOJ2115XOR——线性基
  6. Leetcode1512. 好数对的数目 抽出本质原型 利用范围条件
  7. 【完整流程】用VSCode替换Vivado默认编辑器
  8. sys/queue.h分析(图片复制不过来,查看原文)
  9. java编程代写有哪些平台,学习路线+知识点梳理
  10. 解析底层原理!月薪20k+的Android面试都问些什么?深夜思考